コード例 #1
0
        public void GetSnippetById_Returns404NotFound_WhenNonExistentIDProvided()
        {
            // Arrange
            _mockApiRepo.Setup(repo => repo.GetSnippetById(0)).Returns(() => null);
            var controller = new SnippetsController(_mockApiRepo.Object, _mapper);

            // Act
            var result = controller.GetSnippetById(1);

            // Assert

            Assert.IsType <NotFoundResult>(result.Result);
        }
コード例 #2
0
        public static async Task <object> AssertSimulate(SnippetsController controller, string snippetName, params string[] messages)
        {
            var response = await controller.Simulate(snippetName);

            Console.WriteLine(JsonConvert.SerializeObject(response));
            Assert.AreEqual(Status.Success, response.Status);
            foreach (var m in messages.Zip(response.Messages, (expected, actual) => new { expected, actual }))
            {
                Assert.AreEqual(m.expected, m.actual);
            }

            return(response.Result);
        }
コード例 #3
0
        public static async Task <string[]> AssertCompile(SnippetsController controller, string source, params string[] ops)
        {
            var response = await controller.Compile(source);

            Console.WriteLine(JsonConvert.SerializeObject(response));
            Assert.AreEqual(Status.success, response.status);
            Assert.AreEqual(0, response.messages.Length);
            foreach (var op in ops.OrderBy(o => o).Zip(response.result.OrderBy(o => o), (expected, actual) => new { expected, actual }))
            {
                Assert.AreEqual(op.expected, op.actual);
            }

            return(response.result);
        }
コード例 #4
0
        public void GetSnippets_Returns200OK_WhenDBHasOneResource()
        {
            // Arrange

            _mockApiRepo.Setup(repo =>
                               repo.GetSnippets()).Returns(GetSnippets(1));

            var controller = new SnippetsController(_mockApiRepo.Object, _mapper);

            // Act

            var result = controller.GetSnippets();

            // Assert
            Assert.IsType <OkObjectResult>(result.Result);
        }
コード例 #5
0
        public async void GetSnippets_ReturnsZeroItems_WhenDBIsEmpty()
        {
            // Arrange

            _mockApiRepo.Setup(repo =>
                               repo.GetSnippets()).Returns(GetSnippets(0));

            var controller = new SnippetsController(_mockApiRepo.Object, _mapper);

            // Act

            var result = controller.GetSnippets();

            // Assert
            Assert.IsType <OkObjectResult>(result.Result);
        }
コード例 #6
0
        public void GetSnippetById_Returns200OK_WhenValidIDProvided()
        {
            // Arrange
            _mockApiRepo.Setup(repo => repo.GetSnippetById(0)).Returns(
                new Snippet {
                Id = 0, HowTo = "Mock", Platform = "MockPL", CodeSnippet = "Mock"
            });

            var controller = new SnippetsController(_mockApiRepo.Object, _mapper);

            // Act
            var result = controller.GetSnippetById(0);

            // Assert

            Assert.IsType <OkObjectResult>(result.Result);
        }
コード例 #7
0
        public async void GetSnippets_ReturnsOneItem_WhenDBHasOneResource()
        {
            // Arrange
            _mockApiRepo.Setup(repo =>
                               repo.GetSnippets()).Returns(GetSnippets(1));
            var controller = new SnippetsController(_mockApiRepo.Object, _mapper);

            // Act
            var result = controller.GetSnippets();

            // Assert

            var okResult = result.Result as OkObjectResult;

            var snippets = okResult.Value as List <SnippetReadDto>;

            Assert.Single(snippets);
        }