private ClientCache createScenario() {
    int siteALocatorPort = createLocator(locatorA, SITE_A_DSID);
    int siteBLocatorPort = createLocator(locatorB, SITE_B_DSID);

    createServerRegion(serverA, siteALocatorPort, "regionA", SITE_A_DSID);
    createServerRegion(serverB, siteBLocatorPort, "regionB", SITE_B_DSID);

    ClientCache client = new ClientCacheFactory().create();

    Pool poolA =
        PoolManager.createFactory().addLocator("localhost", siteALocatorPort).create("poolA");
    Pool poolB =
        PoolManager.createFactory().addLocator("localhost", siteBLocatorPort).create("poolB");

    client.createClientRegionFactory(ClientRegionShortcut.PROXY)
        .setPoolName("poolA")
        .create("regionA");

    client.createClientRegionFactory(ClientRegionShortcut.PROXY)
        .setPoolName("poolB")
        .create("regionB");
    return client;
  }
Create the two sites (A and B) the client.

The client has two regions
- regionA = connected using poolA to serverA
- regionB = connected using poolB to serverB
geode-core/src/distributedTest/java/org/apache/geode/pdx/PdxMultiClusterClientServerDUnitTest.java