static void TestParseStateSync(Protocol proto, String fileName, Func <mtest.publishable_dunion> getState) { mtest.publishable_dunion_subscriber subs = new mtest.publishable_dunion_subscriber(); SimpleBuffer buffer = SimpleBuffer.readFromFile(fileName); IPublishableParser parser = makePublishableParser(proto, buffer.getReadIterator()); subs.applyStateSyncMessage(parser); mtest.publishable_dunion expected = getState(); Assert.True(expected.isEquivalent(subs)); }
static void TestParseUpdate(Protocol proto, String fileNameInit, String fileName, Func <mtest.publishable_dunion> getState, Action <mtest.Ipublishable_dunion> updateDelegate) { mtest.publishable_dunion_subscriber subs = new mtest.publishable_dunion_subscriber(); //mtest.publishable_dunion data = getState(); //subs.debugOnlySetData(data); SimpleBuffer bufferInit = SimpleBuffer.readFromFile(fileNameInit); IPublishableParser parserInit = makePublishableParser(proto, bufferInit.getReadIterator()); subs.applyStateSyncMessage(parserInit); SimpleBuffer buffer = SimpleBuffer.readFromFile(fileName); IPublishableParser parser = makePublishableParser(proto, buffer.getReadIterator()); subs.applyMessageWithUpdates(parser); mtest.publishable_dunion expected = getState(); Assert.False(expected.isEquivalent(subs)); updateDelegate(expected); Assert.True(expected.isEquivalent(subs)); }