public static Integer createServerCache() throws Exception {
    new EventIDVerificationDUnitTest().createCache(new Properties());
    AttributesFactory factory = new AttributesFactory();
    factory.setScope(Scope.DISTRIBUTED_ACK);
    factory.setDataPolicy(DataPolicy.REPLICATE);

    factory.setCacheListener(new CacheListenerAdapter() {
      @Override
      public void afterCreate(EntryEvent event) {

        synchronized (EventIDVerificationDUnitTest.class) {
          gotCallback = true;
          testEventIDResult = ((EntryEventImpl) event).getEventId().equals(eventId);
          EventIDVerificationDUnitTest.class.notify();
        }

      }

      @Override
      public void afterUpdate(EntryEvent event) {

        synchronized (EventIDVerificationDUnitTest.class) {
          gotCallback = true;
          testEventIDResult = ((EntryEventImpl) event).getEventId().equals(eventId);
          EventIDVerificationDUnitTest.class.notify();
        }

      }

      @Override
      public void afterDestroy(EntryEvent event) {

        synchronized (EventIDVerificationDUnitTest.class) {
          gotCallback = true;
          testEventIDResult = ((EntryEventImpl) event).getEventId().equals(eventId);
          EventIDVerificationDUnitTest.class.notify();
        }

      }

      @Override
      public void afterRegionDestroy(RegionEvent event) {

        synchronized (EventIDVerificationDUnitTest.class) {
          gotCallback = true;
          testEventIDResult = ((RegionEventImpl) event).getEventId().equals(eventId);
          EventIDVerificationDUnitTest.class.notify();
        }

      }

      @Override
      public void afterRegionClear(RegionEvent event) {
        synchronized (EventIDVerificationDUnitTest.class) {
          gotCallback = true;
          // verifyEventIDsDuringRegionDestroy(event);
          testEventIDResult = ((RegionEventImpl) event).getEventId().equals(eventId);
          if (!testEventIDResult) {
            cache.getLogger().warning("Expected " + eventId.expensiveToString() + ", but processed"
                + ((RegionEventImpl) event).getEventId().expensiveToString());
          }
          EventIDVerificationDUnitTest.class.notify();
        }
      }

    });

    RegionAttributes attrs = factory.create();
    cache.createRegion(REGION_NAME, attrs);
    int port = getRandomAvailableTCPPort();
    CacheServer server1 = cache.addCacheServer();
    server1.setPort(port);
    server1.setNotifyBySubscription(true);
    server1.start();
    return server1.getPort();
  }
Verify that EventId is prapogated to server in case of region clear. It also checks that peer
nodes also get the same EventID.
geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/EventIDVerificationDUnitTest.java