public void Handle_ReturnsTrueOrFalseIfElementIsInTheStorage(bool contains) { // arrange var request = new ContainsRequest(); var processor = new ContainsProcessor(); var storage = Substitute.For <IStorage>(); storage.Contains(request.Key).Returns(contains); // act ContainsResponse response = processor.Reply(request, storage); // assert Assert.Equal(response.Contains, contains); }
public void Handle_ReturnsTrueOrFalseIfElementIsInTheStorage(bool contains) { // arrange var request = new ContainsRequest(); var processor = new ContainsProcessor(); var storage = Substitute.For <IStorage>(); storage.Contains(request.Key).Returns(contains); byte[] expectedBytes = SerializationUtils.SerializeToStreamWithLength(contains); var socket = Substitute.For <Socket>(); socket.Send(Arg.Any <byte[]>(), Arg.Any <int>(), Arg.Any <int>(), Arg.Any <SocketFlags>()) .Returns(expectedBytes.Length); // act processor.Handle(ref request, storage, socket); // assert socket.Received(1).Send(Arg.Is <byte[]>(x => x.SequenceEqual(expectedBytes)), Arg.Any <int>(), Arg.Any <int>(), Arg.Any <SocketFlags>()); }