Пример #1
0
        public async System.Threading.Tasks.Task GetTeacherByIdSuccesfull()
        {
            var context = TestingUtilities.CreateInMemoryDatabaseContext("TestDatabaseGetTeacherById");
            var data    = new List <Teacher>
            {
                new Teacher()
                {
                    Id = 1
                },
                new Teacher()
                {
                    Id = 2
                },
                new Teacher()
                {
                    Id = 3
                }
            };

            context.Teachers.AddRange(data);
            context.SaveChanges();
            var contr = new TeachersController(context);
            //Act
            var result = await contr.Get(1);

            var resValue  = result.Value;
            var resResult = result.Result;

            //Assert
            Assert.Equal(data[0], resValue);
            Assert.Null(resResult);
            context.Database.EnsureDeleted();
        }
        public async Task GetSingle_404()
        {
            var mock = new Mock <IReadOnlyRepository <Teacher> >();

            mock.Setup(x => x.GetSingleAsync(It.IsAny <int>())).ReturnsAsync((Teacher)null);

            var controller   = new TeachersController(mock.Object);
            var actionResult = await controller.Get(new Random().Next(0, int.MaxValue));

            var modelResult = Assert.IsType <NotFoundResult>(actionResult);
        }
        public async Task GetAll_404()
        {
            var mock = new Mock <IReadOnlyRepository <Teacher> >();

            mock.Setup(x => x.GetAllAsync()).ReturnsAsync(new List <Teacher>());

            var controller   = new TeachersController(mock.Object);
            var actionResult = await controller.Get();

            var modelResult = Assert.IsType <NotFoundResult>(actionResult);
        }
        public async Task GetSingle_200()
        {
            var mock = new Mock <IReadOnlyRepository <Teacher> >();

            mock.Setup(x => x.GetSingleAsync(It.IsAny <int>())).ReturnsAsync(TestData.First());

            var controller   = new TeachersController(mock.Object);
            var actionResult = await controller.Get(this.TestData.First().TeacherId);

            var modelResult = Assert.IsType <OkObjectResult>(actionResult);
            var model       = Assert.IsType <Teacher>(modelResult.Value);

            Assert.Equal(TestData.First().TeacherId, model.TeacherId);
        }
        public async Task GetAll_200()
        {
            var mock = new Mock <IReadOnlyRepository <Teacher> >();

            mock.Setup(x => x.GetAllAsync()).ReturnsAsync(TestData);

            var controller   = new TeachersController(mock.Object);
            var actionResult = await controller.Get();

            var modelResult = Assert.IsType <OkObjectResult>(actionResult);
            var model       = Assert.IsType <List <Teacher> >(modelResult.Value);

            Assert.True(model.Any());
            Assert.Equal(2, model.Count());
            Assert.Equal(TestData.First().TeacherId, model.First().TeacherId);
        }
        public void TestGetTeachers()
        {
            ExpectedTeachers expectedTeachers = new ExpectedTeachers();
            List <Teacher>   expected         = expectedTeachers.GetTeachers();
            ObjectResult     result           = (ObjectResult)teachersController.Get().Result;
            int?statusCode = result.StatusCode;

            Assert.Equal(200, statusCode);
            List <Teacher> actual = (List <Teacher>)result.Value;

            Assert.Equal(expected.Count, actual.Count);
            for (int i = 0; i < expected.Count; ++i)
            {
                Assert.Equal(expected[i].SSN, actual[i].SSN);
            }
        }