private static void assertSequenceInvalid(TransformedWaveletDelta... deltas) { try { DeltaSequence.of(deltas); fail("Expected delta sequence construction to fail"); } catch (IllegalArgumentException expected) { } }
private static void assertSequenceInvalid(TransformedWaveletDelta... deltas) { try { DeltaSequence.of(deltas); fail("Expected delta sequence construction to fail"); } catch (IllegalArgumentException expected) { } }
/** * Generate events from deltas */ private EventMessageBundle generateEventsFromDeltas(TransformedWaveletDelta... deltas) throws OperationException { WaveletAndDeltas waveletAndDeltas = WaveletAndDeltas.create(waveletData, DeltaSequence.of(deltas)); Map<EventType, Capability> capabilities = ALL_CAPABILITIES; // Generate the events EventMessageBundle messages = eventGenerator.generateEvents(waveletAndDeltas, capabilities, CONVERTER); return messages; }
/** * Generate events from deltas */ private EventMessageBundle generateEventsFromDeltas(TransformedWaveletDelta... deltas) throws OperationException { WaveletAndDeltas waveletAndDeltas = WaveletAndDeltas.create(waveletData, DeltaSequence.of(deltas)); Map<EventType, Capability> capabilities = ALL_CAPABILITIES; // Generate the events EventMessageBundle messages = eventGenerator.generateEvents(waveletAndDeltas, capabilities, CONVERTER); return messages; }
public void testOnRemoveParticipantEvent() { DeltaSequence POJO_DELTAS = DeltaSequence.of(CoreWaveletOperationSerializer .deserialize(REMOVE_DELTA, END_VERSION, 0L)); long dummyCreationTime = System.currentTimeMillis(); WaveletData wavelet = WaveletDataUtil.createEmptyWavelet(WAVELET_NAME, PARTICIPANT, BEGIN_VERSION, dummyCreationTime); dispatcher.waveletUpdate(wavelet, POJO_DELTAS); verify(listener).onParticipantRemoved(WAVELET_NAME, PARTICIPANT); } }
public void testOnAddParticipantEvent() { DeltaSequence POJO_DELTAS = DeltaSequence.of(CoreWaveletOperationSerializer .deserialize(ADD_DELTA, END_VERSION, 0L)); long dummyCreationTime = System.currentTimeMillis(); WaveletData wavelet = WaveletDataUtil.createEmptyWavelet(WAVELET_NAME, PARTICIPANT, BEGIN_VERSION, dummyCreationTime); dispatcher.waveletUpdate(wavelet, POJO_DELTAS); verify(listener).onParticipantAdded(WAVELET_NAME, PARTICIPANT); }
public void testOnAddParticipantEvent() { DeltaSequence POJO_DELTAS = DeltaSequence.of(CoreWaveletOperationSerializer .deserialize(ADD_DELTA, END_VERSION, 0L)); long dummyCreationTime = System.currentTimeMillis(); WaveletData wavelet = WaveletDataUtil.createEmptyWavelet(WAVELET_NAME, PARTICIPANT, BEGIN_VERSION, dummyCreationTime); dispatcher.waveletUpdate(wavelet, POJO_DELTAS); verify(listener).onParticipantAdded(WAVELET_NAME, PARTICIPANT); }
public void testOnRemoveParticipantEvent() { DeltaSequence POJO_DELTAS = DeltaSequence.of(CoreWaveletOperationSerializer .deserialize(REMOVE_DELTA, END_VERSION, 0L)); long dummyCreationTime = System.currentTimeMillis(); WaveletData wavelet = WaveletDataUtil.createEmptyWavelet(WAVELET_NAME, PARTICIPANT, BEGIN_VERSION, dummyCreationTime); dispatcher.waveletUpdate(wavelet, POJO_DELTAS); verify(listener).onParticipantRemoved(WAVELET_NAME, PARTICIPANT); } }
public void testContiguousDeltas() throws Exception { addCarolOp.apply(waveletData); TransformedWaveletDelta deltaAdd = new TransformedWaveletDelta(ALEX, V2, 0L, Arrays.asList(addCarolOp)); removeAlexOp.apply(waveletData); TransformedWaveletDelta deltaRemove = new TransformedWaveletDelta(ALEX, V3, 0L, Arrays.asList(removeAlexOp)); DeltaSequence deltas = DeltaSequence.of(deltaAdd, deltaRemove); wavelet.appendDeltas(waveletData, deltas); }
public void testContiguousDeltas() throws Exception { addCarolOp.apply(waveletData); TransformedWaveletDelta deltaAdd = new TransformedWaveletDelta(ALEX, V2, 0L, Arrays.asList(addCarolOp)); removeAlexOp.apply(waveletData); TransformedWaveletDelta deltaRemove = new TransformedWaveletDelta(ALEX, V3, 0L, Arrays.asList(removeAlexOp)); DeltaSequence deltas = DeltaSequence.of(deltaAdd, deltaRemove); wavelet.appendDeltas(waveletData, deltas); }
public void testJoinValidSequencesAllowed() { DeltaSequence s1 = DeltaSequence.of(delta1); DeltaSequence s2 = DeltaSequence.of(delta2, delta3); DeltaSequence joined = DeltaSequence.join(s1, s2); assertEquals(delta1.getAppliedAtVersion(), joined.getStartVersion()); assertEquals(delta3.getResultingVersion(), joined.getEndVersion()); assertEquals(ImmutableList.of(delta1, delta2, delta3), joined); }
public void testJoinValidSequencesAllowed() { DeltaSequence s1 = DeltaSequence.of(delta1); DeltaSequence s2 = DeltaSequence.of(delta2, delta3); DeltaSequence joined = DeltaSequence.join(s1, s2); assertEquals(delta1.getAppliedAtVersion(), joined.getStartVersion()); assertEquals(delta3.getResultingVersion(), joined.getEndVersion()); assertEquals(ImmutableList.of(delta1, delta2, delta3), joined); }
public void testValidSequenceAllowed() { DeltaSequence deltaseq = DeltaSequence.of(twoDeltas); assertEquals(2, deltaseq.size()); assertEquals(START_VERSION, deltaseq.getStartVersion()); assertEquals(delta2.getResultingVersion(), deltaseq.getEndVersion()); }
public void testValidSequenceAllowed() { DeltaSequence deltaseq = DeltaSequence.of(twoDeltas); assertEquals(2, deltaseq.size()); assertEquals(START_VERSION, deltaseq.getStartVersion()); assertEquals(delta2.getResultingVersion(), deltaseq.getEndVersion()); }
public void testNonContiguousDeltas() throws Exception { TransformedWaveletDelta deltaAdd = new TransformedWaveletDelta(ALEX, V1, 0L, Arrays.asList(new NoOp(new WaveletOperationContext(ALEX, 0L, 1, V1)))); TransformedWaveletDelta deltaRemove = new TransformedWaveletDelta(ALEX, V2, 0L, Arrays.asList(new NoOp(new WaveletOperationContext(ALEX, 0L, 1, V2)))); DeltaSequence deltas = DeltaSequence.of(deltaAdd, deltaRemove); try { wavelet.appendDeltas(waveletData, deltas); fail("Expected exception because deltas aren't contiguous"); } catch (IllegalArgumentException e) { // Expected } } }
/** * Tests DeltaSequence.subList() on both empty and nonempty delta sequences. */ public void testSubList() { DeltaSequence empty = DeltaSequence.empty(); assertEquals(empty, empty.subList(0, 0)); DeltaSequence deltaseq = DeltaSequence.of(twoDeltas); assertEquals(twoDeltas, deltaseq.subList(0, twoDeltas.size())); assertEquals(empty, deltaseq.subList(0, 0)); // Construct a sublist with just the first delta. DeltaSequence subDeltas = deltaseq.subList(0, 1); assertEquals(START_VERSION + 5, subDeltas.getEndVersion().getVersion()); assertEquals(deltaseq.getStartVersion(), subDeltas.getStartVersion()); assertEquals(ImmutableList.of(delta1), subDeltas); }
@Override protected void setUp() throws Exception { waveletData = WaveletDataUtil.createEmptyWavelet(WAVELET_NAME, ALEX, HashedVersion.unsigned(0), 0L); waveletData.addParticipant(ALEX); AddParticipant addBobOp = new AddParticipant(new WaveletOperationContext(ALEX, 0L, 1, V1), BOB); addBobOp.apply(waveletData); TransformedWaveletDelta delta = new TransformedWaveletDelta(ALEX, V1, 0L, Arrays.asList(addBobOp)); wavelet = WaveletAndDeltas.create(waveletData, DeltaSequence.of(delta)); addCarolOp = new AddParticipant(new WaveletOperationContext(ALEX, 0L, 1, V2), CAROL); removeAlexOp = new RemoveParticipant(new WaveletOperationContext(ALEX, 0L, 1, V3), ALEX); }
@Override protected void setUp() throws Exception { waveletData = WaveletDataUtil.createEmptyWavelet(WAVELET_NAME, ALEX, HashedVersion.unsigned(0), 0L); waveletData.addParticipant(ALEX); AddParticipant addBobOp = new AddParticipant(new WaveletOperationContext(ALEX, 0L, 1, V1), BOB); addBobOp.apply(waveletData); TransformedWaveletDelta delta = new TransformedWaveletDelta(ALEX, V1, 0L, Arrays.asList(addBobOp)); wavelet = WaveletAndDeltas.create(waveletData, DeltaSequence.of(delta)); addCarolOp = new AddParticipant(new WaveletOperationContext(ALEX, 0L, 1, V2), CAROL); removeAlexOp = new RemoveParticipant(new WaveletOperationContext(ALEX, 0L, 1, V3), ALEX); }