コード例 #1
0
        public async void GetSegmentedMessagesOk(Message[] messages)
        {
            // Arrange
            var mock = new Mock <IMessageRepository>();
            int size = 2, index = 2;

            mock.Setup(rep => rep.GetAllMessagesAsync(size, index))
            .Returns(() => Task <IEnumerable <Message> > .Run(() =>
            {
                List <Message> ls = new List <Message>();
                ls.Add(messages[2]);
                ls.Add(messages[3]);

                return(ls.AsEnumerable <Message>());
            }));
            mock.Setup(rep => rep.LongCountAsync()).Returns(() => Task <long> .Run(() => 2L));
            MessageController controller = new MessageController(mock.Object);

            // Act
            OkObjectResult result =
                await controller.GetAllMessages(
                    size : size,
                    index : index) as OkObjectResult;

            SegmentedItems <Message> model = result?.Value as SegmentedItems <Message>;

            // Assert
            Assert.Equal((int?)HttpStatusCode.OK, result?.StatusCode);
            Assert.True(model?.Count == 2);
            Assert.Equal(messages[2], model?.Items?.ToArray <Message>()[0], Comparer.Get <Message>((m1, m2) => m1.Id == m2.Id));
            Assert.Equal(messages[3], model?.Items?.ToArray <Message>()[1], Comparer.Get <Message>((m1, m2) => m1.Id == m2.Id));
        }
コード例 #2
0
        public async void GetSegmentedInformation(Message[] messages)
        {
            // Arrange
            var mock = new Mock <IMessageRepository>();
            int size = 3, index = 2;

            mock.Setup(rep => rep.GetAllMessagesAsync(size, index))
            .Returns(() => Task <IEnumerable <Message> > .Run(() =>
            {
                List <Message> ls = new List <Message>();
                ls.Add(messages[2]);
                ls.Add(messages[3]);

                return(ls.AsEnumerable <Message>());
            }));

            mock.Setup(rep => rep.LongCountAsync()).Returns(Task <Message> .Run(() => messages.LongCount()));
            MessageController controller = new MessageController(mock.Object);

            // Act
            OkObjectResult result =
                await controller.GetAllMessages(
                    size : size,
                    index : index) as OkObjectResult;

            SegmentedItems <Message> model = result?.Value as SegmentedItems <Message>;

            // Assert
            Assert.Equal(messages.LongCount(), model?.Count);
            Assert.Equal(index, model?.Index);
            Assert.Equal(size, model?.Size);
        }
コード例 #3
0
        public async void GetAllMessagesOk(Message[] messages)
        {
            // Arrange
            var mock = new Mock <IMessageRepository>();

            mock.SetupSequence(rep => rep.GetAllMessagesAsync(It.IsAny <int>(), It.IsAny <int>()))
            .Returns(() => Task <IEnumerable <Message> > .Run(() => messages.AsEnumerable <Message>()));
            MessageController controller = new MessageController(mock.Object);

            // Act
            OkObjectResult result = await controller.GetAllMessages() as OkObjectResult;

            SegmentedItems <Message> model = result?.Value as SegmentedItems <Message>;

            // Assert
            Assert.Equal((int?)HttpStatusCode.OK, result.StatusCode);
            Assert.Equal(messages, model.Items, Comparer.Get <Message>((m1, m2) => m1.Id == m2.Id));
        }