public void Merge_WithExistingValues_AddsElementsToTheRepository(HashSet <LWW_SetWithVCElement <TestType> > existingAdds, HashSet <LWW_SetWithVCElement <TestType> > existingRemoves, HashSet <LWW_SetWithVCElement <TestType> > values) { _repository.PersistAdds(existingAdds.ToImmutableHashSet()); _repository.PersistRemoves(existingRemoves.ToImmutableHashSet()); _lwwSetService.Merge(values.ToImmutableHashSet(), values.ToImmutableHashSet()); var repositoryAdds = _repository.GetAdds(); var repositoryRemoves = _repository.GetRemoves(); AssertContains(values, repositoryAdds); AssertContains(values, repositoryRemoves); }
public void Lookup_Added_ReturnsTrue(HashSet <LWW_SetWithVCElement <TestType> > existingAdds, HashSet <LWW_SetWithVCElement <TestType> > existingRemoves, TestType value, Node node) { var clock = ImmutableSortedDictionary <Node, long> .Empty; _repository.PersistAdds(existingAdds.ToImmutableHashSet()); _repository.PersistRemoves(existingRemoves.ToImmutableHashSet()); _lwwSetService.DownstreamAssign(value, new VectorClock(clock.Add(node, 0))); var lookup = _lwwSetService.Lookup(value); Assert.True(lookup); }