Esempio n. 1
0
        public void UpdateTest1()
        {
            using (var messageCache = new MessageCache(CreateClientFactory()))
            {
                Connect(messageCache);

                var buffer = messageCache.InternalBuffer;
                _stream.Expect(x => x.Read(buffer, 0, buffer.Length)).Do(
                    new Func <byte[], int, int, int>(ConnectionTests.FillBufferWithTestData));

                MessageUpdatedEventArgs e = null;
                messageCache.MessageUpdated += (sender, args) => e = args;
                bool updateFinishedRaised = false;
                messageCache.UpdateFinished += delegate { updateFinishedRaised = true; };
                messageCache.SocketTimerElapsed(null, null);

                Assert.AreEqual("units", e.Key);
                Assert.IsNull(e.DataType);
                Assert.IsTrue(updateFinishedRaised);
                Assert.IsNotNull(messageCache.GetJsonMessage(JsonMessageKey.QueueInfo));
            }

            _tcpClient.VerifyAllExpectations();
            _stream.VerifyAllExpectations();
        }
Esempio n. 2
0
        public void Connection_Connect_Test1()
        {
            using (var connection = new Connection(CreateClientFactory()))
            {
                SetupSuccessfulConnectionExpectations(_tcpClient, _stream);

                bool connectedChangedFired = false;
                bool statusMessageFired    = false;
                connection.ConnectedChanged += (sender, args) => connectedChangedFired = true;
                connection.StatusMessage    += (sender, args) => statusMessageFired = true;
                connection.Connect("server", 10000, "password");

                Assert.IsTrue(connectedChangedFired);
                Assert.IsTrue(statusMessageFired);
            }

            _tcpClient.VerifyAllExpectations();
            _stream.VerifyAllExpectations();
        }
Esempio n. 3
0
        public void ConnectTest1()
        {
            using (var connection = new Connection(CreateClientFactory()))
            {
                SetupSuccessfulConnectionExpectations(_tcpClient, _stream);

                bool connectedChangedFired = false;
                bool statusMessageFired    = false;
                connection.ConnectedChanged += (sender, args) => connectedChangedFired = true;
                connection.StatusMessage    += (sender, args) => statusMessageFired = true;
                // set to 5 minutes so the update loop never gets a chance to fire
                connection.ReceiveLoopTime = 300000;
                connection.Connect("server", 10000, "password");

                Assert.IsTrue(connectedChangedFired);
                Assert.IsTrue(statusMessageFired);
                Assert.IsTrue(connection.UpdateEnabled);
            }

            _tcpClient.VerifyAllExpectations();
            _stream.VerifyAllExpectations();
        }
Esempio n. 4
0
        public void GetHeartbeatTest()
        {
            using (var fahClient = new FahClient(CreateClientFactory()))
            {
                Connect(fahClient);

                var buffer = fahClient.InternalBuffer;
                _stream.Expect(x => x.Read(buffer, 0, buffer.Length)).Do(
                    new Func <byte[], int, int, int>(FillBufferWithHeartbeatData));

                MessageUpdatedEventArgs e = null;
                fahClient.MessageUpdated += (sender, args) => e = args;
                fahClient.SocketTimerElapsed(null, null);

                Assert.AreEqual(JsonMessageKey.Heartbeat, e.Key);
                Assert.AreEqual(typeof(Heartbeat), e.DataType);
                var heartbeat = fahClient.GetMessage <Heartbeat>();
                Assert.IsNotNull(heartbeat);
                Assert.AreEqual(0, heartbeat.Errors.Count());
            }

            _tcpClient.VerifyAllExpectations();
            _stream.VerifyAllExpectations();
        }