@Test
  public void startedSenderReceivingEventsWhileStartingShouldDrainQueues()
      throws Exception {
    Integer lnPort = vm0.invoke(() -> WANTestBase.createFirstLocatorWithDSId(2));
    Integer nyPort = vm1.invoke(() -> WANTestBase.createFirstRemoteLocator(1, lnPort));

    createCacheInVMs(lnPort, vm2, vm4);
    createReceiverInVMs(vm2, vm4);
    createCacheInVMs(nyPort, vm3, vm5);
    createReceiverInVMs(vm3, vm5);

    vm2.invoke(() -> WANTestBase.createSender("ny", 1, false, 100, 10, false, false, null, true));
    vm4.invoke(() -> WANTestBase.createSender("ny", 1, false, 100, 10, false, false, null, true));

    vm3.invoke(() -> WANTestBase.createSender("ln", 2, false, 100, 10, false, false, null, true));
    vm5.invoke(() -> WANTestBase.createSender("ln", 2, false, 100, 10, false, false, null, true));

    vm2.invoke(() -> WANTestBase.createPartitionedRegion(getTestMethodName() + "_PR", "ny", 1, 100,
        isOffHeap()));
    vm4.invoke(() -> WANTestBase.createPartitionedRegion(getTestMethodName() + "_PR", "ny", 1, 100,
        isOffHeap()));

    vm3.invoke(() -> WANTestBase.createPartitionedRegion(getTestMethodName() + "_PR", "ln", 1, 100,
        isOffHeap()));
    vm5.invoke(() -> WANTestBase.createPartitionedRegion(getTestMethodName() + "_PR", "ln", 1, 100,
        isOffHeap()));

    AsyncInvocation<Void> inv =
        vm2.invokeAsync(() -> WANTestBase.doPuts(getTestMethodName() + "_PR", 1000));
    startSenderInVMsAsync("ny", vm2, vm4);
    inv.await();

    vm2.invoke(() -> WANTestBase.verifyTmpDroppedEventSize("ny", 0));
    vm4.invoke(() -> WANTestBase.verifyTmpDroppedEventSize("ny", 0));

    vm2.invoke(() -> WANTestBase.validateParallelSenderQueueAllBucketsDrained("ny"));
    vm4.invoke(() -> WANTestBase.validateParallelSenderQueueAllBucketsDrained("ny"));
  }
Test that gateway sender's secondary queues do not keep dropped events
by the primary gateway sender received while it was starting but was not
started yet, after the primary finishes starting.
Site-LN: dsid=2: senderId="ny": vm2, vm4
Site-NY: dsid=1: senderId="ln": vm3, vm6
NY site's sender's manual-start=true
LN site's sender's manual-start=true

put some events from LN and start the sender in NY simultaneously
Make sure there are no events in tmpDroppedEvents and the queues are drained.
geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/serial/SerialWANPropagationsFeatureDUnitTest.java