public void ConnectRequestAddsConnectionToHeartBeat() { var context = new Mock<HttpContextBase>(); var request = new Mock<HttpRequestBase>(); request.Setup(m => m.Path).Returns("/foo/connect"); request.Setup(m => m["clientId"]).Returns("1"); context.Setup(m => m.Request).Returns(request.Object); var json = new Mock<IJsonStringifier>(); var heartBeat = new Mock<ITransportHeartBeat>(); var transport = new LongPollingTransport(context.Object, json.Object, heartBeat.Object); var connection = new Mock<IConnection>(); transport.ProcessRequest(connection.Object); heartBeat.Verify(m => m.AddConnection(transport), Times.Once()); }
public void ConnectRequestAddsConnectionToHeartBeat() { var context = new Mock<HttpContextBase>(); var request = new Mock<HttpRequestBase>(); request.Setup(m => m.Path).Returns("/foo/connect"); var qs = new NameValueCollection(); qs["connectionId"] = "1"; request.Setup(m => m.QueryString).Returns(qs); context.Setup(m => m.Request).Returns(request.Object); var json = new Mock<IJsonSerializer>(); var heartBeat = new Mock<ITransportHeartBeat>(); var transport = new LongPollingTransport(context.Object, json.Object, heartBeat.Object); var connection = new Mock<IConnection>(); transport.ProcessRequest(connection.Object); heartBeat.Verify(m => m.AddConnection(transport), Times.Once()); }
public void ConnectRequestRaisesConnectEvent() { var context = new Mock<HttpContextBase>(); var request = new Mock<HttpRequestBase>(); request.Setup(m => m.Path).Returns("/foo/connect"); request.Setup(m => m["clientId"]).Returns("1"); context.Setup(m => m.Request).Returns(request.Object); var json = new Mock<IJsonStringifier>(); var heartBeat = new Mock<ITransportHeartBeat>(); var transport = new LongPollingTransport(context.Object, json.Object, heartBeat.Object); var connection = new Mock<IConnection>(); bool eventRaised = false; transport.Connected += () => { eventRaised = true; }; transport.ProcessRequest(connection.Object); Assert.True(eventRaised); }
public void ConnectRequestRaisesConnectEvent() { var context = new Mock<HttpContextBase>(); var request = new Mock<HttpRequestBase>(); request.Setup(m => m.Path).Returns("/foo/connect"); var qs = new NameValueCollection(); qs["connectionId"] = "1"; request.Setup(m => m.QueryString).Returns(qs); context.Setup(m => m.Request).Returns(request.Object); var json = new Mock<IJsonSerializer>(); var heartBeat = new Mock<ITransportHeartBeat>(); var transport = new LongPollingTransport(context.Object, json.Object, heartBeat.Object); var connection = new Mock<IConnection>(); bool eventRaised = false; transport.Connected += () => { eventRaised = true; }; transport.ProcessRequest(connection.Object); Assert.True(eventRaised); }
public void SendRequestRaisesOnReceived() { var context = new Mock<HttpContextBase>(); var request = new Mock<HttpRequestBase>(); request.Setup(m => m.Path).Returns("/foo/send"); var form = new NameValueCollection(); form["data"] = "some data"; request.Setup(m => m.Form).Returns(form); context.Setup(m => m.Request).Returns(request.Object); var json = new Mock<IJsonStringifier>(); var heartBeat = new Mock<ITransportHeartBeat>(); var transport = new LongPollingTransport(context.Object, json.Object, heartBeat.Object); var connection = new Mock<IConnection>(); bool eventRaised = false; transport.Received += data => { eventRaised = true; Assert.Equal(data, "some data"); }; transport.ProcessRequest(connection.Object); Assert.True(eventRaised); }
public void ProcessRequestReturnsNullIfRequestWithMalformedMessageId() { var context = new Mock<HttpContextBase>(); var request = new Mock<HttpRequestBase>(); var response = new Mock<HttpResponseBase>(); request.Setup(m => m.Path).Returns("/foo"); request.Setup(m => m["clientId"]).Returns("1"); request.Setup(m => m["messageId"]).Returns("fff"); context.Setup(m => m.Response).Returns(response.Object); context.Setup(m => m.Request).Returns(request.Object); var json = new Mock<IJsonStringifier>(); var heartBeat = new Mock<ITransportHeartBeat>(); var transport = new LongPollingTransport(context.Object, json.Object, heartBeat.Object); var connection = new Mock<IConnection>(); var func = transport.ProcessRequest(connection.Object); Assert.Null(func); }
public void ProcessRequestReturnsNullIfRequestWithMalformedMessageId() { var context = new Mock<HttpContextBase>(); var request = new Mock<HttpRequestBase>(); var response = new Mock<HttpResponseBase>(); request.Setup(m => m.Path).Returns("/foo"); var qs = new NameValueCollection(); qs["connectionId"] = "1"; qs["messageId"] = "fff"; request.Setup(m => m.QueryString).Returns(qs); context.Setup(m => m.Response).Returns(response.Object); context.Setup(m => m.Request).Returns(request.Object); var json = new Mock<IJsonSerializer>(); var heartBeat = new Mock<ITransportHeartBeat>(); var transport = new LongPollingTransport(context.Object, json.Object, heartBeat.Object); var connection = new Mock<IConnection>(); var func = transport.ProcessRequest(connection.Object); Assert.Null(func); }