/** * Sets up an expected transform that will accept an input client delta * which has the given op list. It will accept any input server delta and * output its own server delta. */ Expectation(WaveletOperation... inputClientOps) { this.inputClientOps = inputClientOps; this.outputServerDelta = new MergingSequence(); }
/** * Sets up an expected transform that will accept an input client delta * which has the given op list. It will accept any input server delta and * output its own server delta. */ Expectation(WaveletOperation... inputClientOps) { this.inputClientOps = inputClientOps; this.outputServerDelta = new MergingSequence(); }
/** * Specifies that the output client delta should consist of the given * operations. */ public void transformTo(WaveletOperation... outputClientOps) { assertNull("Output client delta already specified", outputClientDelta); outputClientDelta = new MergingSequence(Arrays.asList(outputClientOps)); } }
/** * Specifies that the output client delta should consist of the given * operations. */ public void transformTo(WaveletOperation... outputClientOps) { assertNull("Output client delta already specified", outputClientDelta); outputClientDelta = new MergingSequence(Arrays.asList(outputClientOps)); } }
/** * Creates a transformer that initially has no expectations, and only allows * calls to {@link #transform()} that have been expected via * {@link #expect(WaveletOperation...)}. */ public MockDeltaTransformer() { expectations = CollectionUtils.newLinkedList(); firstServerInputDelta = new MergingSequence(); }
/** * Creates a transformer that initially has no expectations, and only allows * calls to {@link #transform()} that have been expected via * {@link #expect(WaveletOperation...)}. */ public MockDeltaTransformer() { expectations = CollectionUtils.newLinkedList(); firstServerInputDelta = new MergingSequence(); }
/** * Tests that inserting a new head delta into an empty queue makes the queue * non-empty if and only if the delta has ops in it. */ public void testQueueNonemptyAfterInsertingNonemptyHead() { queue.insertHead(new MergingSequence()); assertQueueIsEmpty(); MergingSequence head = new MergingSequence(); head.add(BOB_A); queue.insertHead(head); assertQueueSize(1); }
/** * Tests that inserting a new head delta into an empty queue makes the queue * non-empty if and only if the delta has ops in it. */ public void testQueueNonemptyAfterInsertingNonemptyHead() { queue.insertHead(new MergingSequence()); assertQueueIsEmpty(); MergingSequence head = new MergingSequence(); head.add(BOB_A); queue.insertHead(head); assertQueueSize(1); }
public void testOptimiseEmptyDoesNothing() { MergingSequence delta = new MergingSequence(); delta.optimise(); assertEquals(0, delta.size()); }
public void testOptimiseEmptyDoesNothing() { MergingSequence delta = new MergingSequence(); delta.optimise(); assertEquals(0, delta.size()); }
public void testOptimisesOpsOnSeparateBlips1() throws OperationException { MergingSequence delta = new MergingSequence(); delta.addAll(Arrays.asList( makeBlipContentOp("a", 1), makeBlipContentOp("a", 2), makeBlipContentOp("b", 3) )); delta.optimise(); assertEquals(2, delta.size()); }
public void testOptimisesDeltasWithNonDocOps() throws OperationException { MergingSequence delta = new MergingSequence(); delta.addAll(Arrays.asList( makeBlipContentOp("a", 2), makeBlipContentOp("a", 1), makeOtherBlipOp("a", 3) )); delta.optimise(); assertEquals(2, delta.size()); }
public void testOptimisesDeltasWithNonDocOps() throws OperationException { MergingSequence delta = new MergingSequence(); delta.addAll(Arrays.asList( makeBlipContentOp("a", 2), makeBlipContentOp("a", 1), makeOtherBlipOp("a", 3) )); delta.optimise(); assertEquals(2, delta.size()); }
public void testOptimisesOpsOnSeparateBlips1() throws OperationException { MergingSequence delta = new MergingSequence(); delta.addAll(Arrays.asList( makeBlipContentOp("a", 1), makeBlipContentOp("a", 2), makeBlipContentOp("b", 3) )); delta.optimise(); assertEquals(2, delta.size()); }
public void testOptimisesDocumentOpsOnSameBlipWithLastTimestamp() throws OperationException { MergingSequence delta = new MergingSequence(); delta.addAll(Arrays.asList( makeBlipContentOp("a", 1), makeBlipContentOp("a", 2), makeBlipContentOp("a", 3) )); delta.optimise(); assertEquals(1, delta.size()); assertTimestamp(3, delta); }
public void testOptimisesDocumentOpsOnSameBlipWithLastTimestamp() throws OperationException { MergingSequence delta = new MergingSequence(); delta.addAll(Arrays.asList( makeBlipContentOp("a", 1), makeBlipContentOp("a", 2), makeBlipContentOp("a", 3) )); delta.optimise(); assertEquals(1, delta.size()); assertTimestamp(3, delta); }
public void testOptimisesDeltasWithNonBlipOps1() throws OperationException { MergingSequence delta = new MergingSequence(); ParticipantId jim = new ParticipantId("jim"); delta.addAll(Arrays.asList( makeBlipContentOp("a", 1), makeBlipContentOp("a", 2), new AddParticipant(new WaveletOperationContext(jim, 5L, 1L), jim) )); delta.optimise(); assertEquals(2, delta.size()); }
public void testOptimisesDeltasWithNonBlipOps1() throws OperationException { MergingSequence delta = new MergingSequence(); ParticipantId jim = new ParticipantId("jim"); delta.addAll(Arrays.asList( makeBlipContentOp("a", 1), makeBlipContentOp("a", 2), new AddParticipant(new WaveletOperationContext(jim, 5L, 1L), jim) )); delta.optimise(); assertEquals(2, delta.size()); }
public void testOptimisesDeltasWithNonBlipOps2() throws OperationException { MergingSequence delta = new MergingSequence(); ParticipantId jim = new ParticipantId("jim"); delta.addAll(Arrays.asList( makeBlipContentOp("a", 1), makeBlipContentOp("a", 2), new AddParticipant(new WaveletOperationContext(jim, 5L, 1L), jim), makeBlipContentOp("a", 4), makeBlipContentOp("a", 5) )); delta.optimise(); assertEquals(3, delta.size()); }
public void testOptimisesDeltasWithNonBlipOps2() throws OperationException { MergingSequence delta = new MergingSequence(); ParticipantId jim = new ParticipantId("jim"); delta.addAll(Arrays.asList( makeBlipContentOp("a", 1), makeBlipContentOp("a", 2), new AddParticipant(new WaveletOperationContext(jim, 5L, 1L), jim), makeBlipContentOp("a", 4), makeBlipContentOp("a", 5) )); delta.optimise(); assertEquals(3, delta.size()); }