Ejemplo n.º 1
0
        public void ShouldGetMessagingStats()
        {
            IRestRequest savedRequest = null;

            var messaginStatsObject = new MessagingStats()
            {
                Date = DateTime.Now,
                Costs = 30.15,
                DeliveryRate = 0.95,
                ReplyRate = 0.32,
                MessagesReceived = 1085,
                MessagesSentParts = 150943,
                MessagesSentDelivered = 123,
                MessagesSentAccepted = 44,
                MessagesSentBuffered = 535,
                MessagesSentFailed = 1,
                MessagesSentRejected = 50
            };

            var messagingStatsInitializer = new List<MessagingStats>();
            messagingStatsInitializer.Add(messaginStatsObject);

            mockClient.Setup(trc => trc.Execute<MessagingStatsResult>(It.IsAny<IRestRequest>()))
                .Callback<IRestRequest>((request) => savedRequest = request)
                .Returns(new MessagingStatsResult() { MessagingStats = messagingStatsInitializer });
            var client = mockClient.Object;

            client.GetMessagingStats(MessagingStatsGroupBy.Month, DateTime.Now, DateTime.Today);

            mockClient.Verify(trc => trc.Execute<MessagingStatsResult>(It.IsAny<IRestRequest>()), Times.Once);
            Assert.IsNotNull(savedRequest);
            Assert.AreEqual("stats/messaging", savedRequest.Resource);
            Assert.AreEqual(Method.GET, savedRequest.Method);
            Assert.AreEqual(3, savedRequest.Parameters.Count);
            Assert.AreEqual("month", savedRequest.Parameters.Find(x => x.Name == "by").Value);

            var content = "{ \"resources\": ["
                + "{ \"replyRate\": 0.32, \"date\": null, \"deliveryRate\": 0.95, \"costs\": 21.00,  \"messagesReceived\": 1085,"
                + "\"messagesSentDelivered\": 123, \"messagesSentAccepted\": 44, \"messagesSentBuffered\": 535, \"messagesSentFailed\": 1,  \"messagesSentRejected\": 50, \"messagesSentParts\": 150943 }"

                + "] }";

            var testClient = Common.CreateClient<MessagingStatsResult>(content, null, null);
            client = new Client(testClient);

            var messagingStats = client.GetMessagingStats(MessagingStatsGroupBy.None, DateTime.Now, DateTime.Today);

            Assert.AreEqual(1, messagingStats.MessagingStats.Count);
            Assert.AreEqual(21.00, messagingStats.MessagingStats[0].Costs);
            Assert.AreEqual(0.95, messagingStats.MessagingStats[0].DeliveryRate);
            Assert.AreEqual(0.32, messagingStats.MessagingStats[0].ReplyRate);
            Assert.AreEqual(1085, messagingStats.MessagingStats[0].MessagesReceived);
            Assert.AreEqual(150943, messagingStats.MessagingStats[0].MessagesSentParts);
            Assert.AreEqual(123, messagingStats.MessagingStats[0].MessagesSentDelivered);
            Assert.AreEqual(44, messagingStats.MessagingStats[0].MessagesSentAccepted);
            Assert.AreEqual(535, messagingStats.MessagingStats[0].MessagesSentBuffered);
            Assert.AreEqual(1, messagingStats.MessagingStats[0].MessagesSentFailed);
            Assert.AreEqual(50, messagingStats.MessagingStats[0].MessagesSentRejected);
        }
Ejemplo n.º 2
0
        public void ShouldGetMessagingStats()
        {
            IRestRequest savedRequest = null;

            var messaginStatsObject = new MessagingStats
            {
                Date                  = DateTime.Now,
                Costs                 = 30.15,
                DeliveryRate          = 0.95,
                ReplyRate             = 0.32,
                MessagesReceived      = 1085,
                MessagesSentParts     = 150943,
                MessagesSentDelivered = 123,
                MessagesSentAccepted  = 44,
                MessagesSentBuffered  = 535,
                MessagesSentFailed    = 1,
                MessagesSentRejected  = 50
            };

            var messagingStatsInitializer = new List <MessagingStats>();

            messagingStatsInitializer.Add(messaginStatsObject);

            mockClient.Setup(trc => trc.Execute <MessagingStatsResult>(It.IsAny <IRestRequest>()))
            .Callback <IRestRequest>(request => savedRequest = request)
            .Returns(new MessagingStatsResult {
                MessagingStats = messagingStatsInitializer
            });
            var client = mockClient.Object;

            client.GetMessagingStats(MessagingStatsGroupBy.Month, DateTime.Now, DateTime.Today);

            mockClient.Verify(trc => trc.Execute <MessagingStatsResult>(It.IsAny <IRestRequest>()), Times.Once);
            Assert.IsNotNull(savedRequest);
            Assert.AreEqual("stats/messaging", savedRequest.Resource);
            Assert.AreEqual(Method.GET, savedRequest.Method);
            Assert.AreEqual(3, savedRequest.Parameters.Count);
            Assert.AreEqual("month", savedRequest.Parameters.Find(x => x.Name == "by").Value);

            var content = "{ \"resources\": ["
                          + "{ \"replyRate\": 0.32, \"date\": null, \"deliveryRate\": 0.95, \"costs\": 21.00,  \"messagesReceived\": 1085,"
                          + "\"messagesSentDelivered\": 123, \"messagesSentAccepted\": 44, \"messagesSentBuffered\": 535, \"messagesSentFailed\": 1,  \"messagesSentRejected\": 50, \"messagesSentParts\": 150943 }"
                          + "] }";

            var testClient = Common.CreateClient <MessagingStatsResult>(content, null, null);

            client = new Client(testClient);

            var messagingStats = client.GetMessagingStats(MessagingStatsGroupBy.None, DateTime.Now, DateTime.Today);

            Assert.AreEqual(1, messagingStats.MessagingStats.Count);
            Assert.AreEqual(21.00, messagingStats.MessagingStats[0].Costs);
            Assert.AreEqual(0.95, messagingStats.MessagingStats[0].DeliveryRate);
            Assert.AreEqual(0.32, messagingStats.MessagingStats[0].ReplyRate);
            Assert.AreEqual(1085, messagingStats.MessagingStats[0].MessagesReceived);
            Assert.AreEqual(150943, messagingStats.MessagingStats[0].MessagesSentParts);
            Assert.AreEqual(123, messagingStats.MessagingStats[0].MessagesSentDelivered);
            Assert.AreEqual(44, messagingStats.MessagingStats[0].MessagesSentAccepted);
            Assert.AreEqual(535, messagingStats.MessagingStats[0].MessagesSentBuffered);
            Assert.AreEqual(1, messagingStats.MessagingStats[0].MessagesSentFailed);
            Assert.AreEqual(50, messagingStats.MessagingStats[0].MessagesSentRejected);
        }