public async Task Mutate_messages() { /* Given */ _chat.AddMessage(new ReceivedMessage { Content = "test", FromId = "1", SentAt = DateTime.Now.Date }); string id = "1"; _transportReader.AddMessageToRead(new OperationMessage { Id = id, Type = MessageType.GQL_CONNECTION_INIT }); _transportReader.AddMessageToRead(new OperationMessage { Id = id, Type = MessageType.GQL_START, Payload = JObject.FromObject(new OperationMessagePayload { OperationName = "", Query = @"mutation AddMessage($message: MessageInputType!) { addMessage(message: $message) { from { id displayName } content } }", Variables = JObject.Parse(@"{ ""message"": { ""content"": ""Message"", ""fromId"": ""1"" } }") }) }); _transportReader.AddMessageToRead(new OperationMessage { Id = id, Type = MessageType.GQL_CONNECTION_TERMINATE }); /* When */ await _server.OnConnect(); /* Then */ Assert.Contains(_transportWriter.WrittenMessages, message => message.Type == MessageType.GQL_CONNECTION_ACK); Assert.Contains(_transportWriter.WrittenMessages, message => message.Type == MessageType.GQL_DATA); Assert.Contains(_transportWriter.WrittenMessages, message => message.Type == MessageType.GQL_COMPLETE); }
public async Task Listener_BeforeHandle() { /* Given */ var expected = new OperationMessage { Type = MessageType.GQL_CONNECTION_INIT }; _transportReader.AddMessageToRead(expected); await _transportReader.Complete(); /* When */ await _sut.OnConnect(); /* Then */ await _messageListener.Received().BeforeHandleAsync(Arg.Is <MessageHandlingContext>(context => context.Writer == _transportWriter && context.Reader == _transportReader && context.Subscriptions == _subscriptionManager && context.Message == expected)); }
public async Task Receive_init() { /* Given */ var expected = new OperationMessage { Type = MessageType.GQL_CONNECTION_INIT }; _transportReader.AddMessageToRead(expected); await _transportReader.Complete(); /* When */ await _server.OnConnect(); /* Then */ Assert.Contains(_transportWriter.WrittenMessages, message => message.Type == MessageType.GQL_CONNECTION_ACK); }