Exemplo n.º 1
0
 public GetQuestionsTests()
 {
     _repositoryMock = new Mock <IQuestionRepository>();
     _sut            = new SubjectsController(
         new GetQuestionsUseCase(_repositoryMock.Object),
         new GetQuestionsPresenter());
 }
Exemplo n.º 2
0
 public void Init()
 {
     this.ConfigureMapper();
     this._context    = new FakeSchoolSystemContext();
     this._service    = new SubjectsService(this._context);
     this._controller = new SubjectsController(this._service);
 }
        public void TestInitialize()

        {
            // create some mock data
            subjects = new List <Subject> {
                new Subject {
                    SubjectId = 1, SubjectName = "subject1", Rubric = "rubric one", DueDates = DateTime.Parse(DateTime.Today.ToString())
                },
                new Subject {
                    SubjectId = 2, SubjectName = "subject2", Rubric = "rubric two", DueDates = DateTime.Parse(DateTime.Today.ToString())
                },
                new Subject {
                    SubjectId = 3, SubjectName = "subject3", Rubric = "rubric three", DueDates = DateTime.Parse(DateTime.Today.ToString())
                }
            };


            // set up & populate our mock object to inject into our controller
            mock = new Mock <IMockSubjects>();
            mock.Setup(c => c.Subjects).Returns(subjects.AsQueryable());


            // initialize the controller and inject the mock object
            controller = new SubjectsController(mock.Object);
        }
        public async System.Threading.Tasks.Task GetSubject_NotFound()
        {
            var context = TestingUtilities.CreateInMemoryDatabaseContext("TestDatabaseGetSubjectFailed");
            var data    = new List <Subject>
            {
                new Subject()
                {
                    Id = 1
                },
                new Subject()
                {
                    Id = 2
                }
            };

            context.Subjects.AddRange(data);
            context.SaveChanges();
            var controller = new SubjectsController(context);
            //Act
            var result = await controller.GetSubject(id : 3);

            //Assert
            Assert.IsType <NotFoundResult>(result.Result);
            Assert.Null(result.Value);
        }
Exemplo n.º 5
0
        public void Subjects_Controller_Test_On_EditModel_With_Invalid_Model()
        {
            //Arrange
            Guid   id          = new Guid("f616cc8c-2223-4145-b7d0-232a1f6f0795");
            string title       = "TestT";
            int    noOfCredits = 10;

            Subject expectedSubjects = new Subject(title, noOfCredits);

            expectedSubjects.Id = id;

            SubjectModel expectedModel = new SubjectModel();

            expectedModel.Title = " ";

            var repo = Substitute.For <IRepository>();
            var sut  = new SubjectsController(repo);

            repo.Update(expectedSubjects);

            //Act
            sut.ModelState.AddModelError("FirstName", "Firstname Required");
            var actual = sut.Edit(id, expectedSubjects).Result;

            //Assert
            Assert.IsInstanceOfType(actual, typeof(ViewResult));
        }
        public async System.Threading.Tasks.Task GetSubjectSuccesfull()
        {
            var context = TestingUtilities.CreateInMemoryDatabaseContext("TestDatabaseGetSubject");
            var data    = new List <Subject>
            {
                new Subject()
                {
                    Id = 1
                },
                new Subject()
                {
                    Id = 2
                }
            };

            context.Subjects.AddRange(data);
            context.SaveChanges();
            var controller = new SubjectsController(context);
            //Act
            var result = await controller.GetSubject(id : 1);

            var resValue = result.Value;

            //Assert
            Assert.Equal(data[0], resValue);
        }
        public void UpdateSubject_ValidSubject_ReturnsNoContent()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            SubjectDto subject = new SubjectDto
            {
                firstName   = "Mark",
                lastName    = "Garsden",
                dateOfBirth = new DateTime(1980, 2, 11),
                titleId     = 1
            };

            // act
            var        updateResult    = sc.UpdateSubject(1, subject);
            var        getResult       = sc.GetSubject(1).Result as OkObjectResult;
            SubjectDto subjectReturned = getResult.Value as SubjectDto;

            // assert
            Assert.IsInstanceOf <NoContentResult>(updateResult);
            Assert.AreEqual("Mark", subjectReturned.firstName);
            Assert.AreEqual("Garsden", subjectReturned.lastName);
            Assert.AreEqual("11/02/1980", subject.dateOfBirth.ToString("d"));
            Assert.AreEqual(1, subjectReturned.titleId);
        }
        public void AddSubject_ValidObject_ReturnsCreatedSubject()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            SubjectForCreationDto subject = new SubjectForCreationDto
            {
                FirstName   = "Zita",
                LastName    = "Garsden Kabok",
                DateOfBirth = new DateTime(1980, 05, 03),
                TitleId     = 2
            };

            // act
            CreatedAtRouteResult result = sc.CreateSubject(subject) as CreatedAtRouteResult;

            // assert
            Assert.IsInstanceOf <SubjectDto>(result.Value);
            Assert.AreEqual("GetSubject", result.RouteName);

            SubjectDto subjectReturned = result.Value as SubjectDto;

            Assert.AreEqual(6, subjectReturned.subjectId);
            Assert.AreEqual("Zita", subjectReturned.firstName);
            Assert.AreEqual("Garsden Kabok", subjectReturned.lastName);
            Assert.AreEqual("03/05/1980", subject.DateOfBirth.ToString("d"));
            Assert.AreEqual(2, subjectReturned.titleId);
        }
 public void SubjectsControllerTestsInitialize()
 {
     InitializeSubjectsMock();
     InitializeImagesMock();
     _controller = new SubjectsController(
         _subjectsMock.Object,
         _imagesMock.Object);
 }
Exemplo n.º 10
0
        public void TestSubjectController()
        {
            var obj = new SubjectsController();

            var result = obj.Index() as ViewResult;

            var expected = "Index";

            Assert.AreEqual(expected, result.ViewName);
        }
        public void GetSubject_InValidSubject_ReturnsNotFoundResult()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            // act
            var result = sc.GetSubject(6);

            // assert
            Assert.IsInstanceOf <NotFoundResult>(result.Result);
        }
        public void GetSubjects_ReturnsSubjectDtoList()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            // act
            var result = sc.GetSubjects(null).Result as OkObjectResult;

            // Assert
            Assert.IsInstanceOf <List <SubjectDto> >(result.Value);
        }
        public void GetSubjects_ReturnsOkResult()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            // act
            var result = sc.GetSubjects(null);

            // assert
            Assert.IsInstanceOf <OkObjectResult>(result.Result);
        }
        public async System.Threading.Tasks.Task TestDeleteSubject_NotFound_OnEmptySet()
        {
            //Arrange
            var context    = TestingUtilities.CreateInMemoryDatabaseContext("DeleteSubjectSuccefull");
            var controller = new SubjectsController(context);
            //Act
            var result = await controller.DeleteSubject(44);

            //Assert
            Assert.IsType <NotFoundResult>(result);
            context.Database.EnsureDeleted();
        }
Exemplo n.º 15
0
        public SearchSubjectTests()
        {
            var config = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile(new SubjectProfile());
            });
            var mapper = config.CreateMapper();

            _mockRepo       = new Mock <ISubjectRepository>();
            _mockUnitOfWork = new Mock <IUnitOfWork>();
            _controller     = new SubjectsController(_mockUnitOfWork.Object, mapper);
        }
Exemplo n.º 16
0
        public void Subjects_Controller_Test_On_Create()
        {
            //Arrange
            var repo = Substitute.For <IRepository>();
            var sut  = new SubjectsController(repo);

            //Act
            var actual = sut.Create();

            //Assert
            Assert.IsInstanceOfType(actual, typeof(ViewResult));
        }
        public void GetSubjects_ReturnsAllItems()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            // act
            var result = sc.GetSubjects(null).Result as OkObjectResult;
            List <SubjectDto> subjects = result.Value as List <SubjectDto>;

            // assert
            Assert.AreEqual(5, subjects.Count);
        }
        public void CreateIndexViewLoads()
        {
            // Arrange

            controller = new SubjectsController();

            // Act

            ViewResult value = controller.Create() as ViewResult;

            // Assert

            Assert.AreEqual("Create", value.ViewName);
        }
Exemplo n.º 19
0
        public void Subjects_Controller_Test_On_Edit_With_NonExistent_Id()
        {
            //Arrange
            Guid id   = new Guid("f616cc8c-2223-4145-b7d0-232a1f6f0795");
            var  repo = Substitute.For <IRepository>();
            var  sut  = new SubjectsController(repo);

            repo.GetById <Subject>(id);

            //Act
            var actual = sut.Edit(id).Result;

            //Assert
            Assert.IsInstanceOfType(actual, typeof(NotFoundResult));
        }
Exemplo n.º 20
0
        public void Subjects_Controller_Test_On_Delete_With_Null_Id()
        {
            //Arrange
            var id   = Guid.Empty;
            var repo = Substitute.For <IRepository>();
            var sut  = new SubjectsController(repo);

            repo.GetById <Subject>(id);

            //Act
            var actual = sut.Delete(id).Result;

            //Assert
            Assert.IsInstanceOfType(actual, typeof(NotFoundResult));
        }
        public async Task Return_Index_View_With_Subjects_List()
        {
            // Arrange
            var fixture            = new Fixture();
            var SubjectsController = new SubjectsController(GetFakeContext());


            // Act
            var result = await SubjectsController.Index();

            // Assert
            Assert.NotNull(result);
            var viewResult = Assert.IsAssignableFrom <ViewResult>(result);
            var Subjects   = Assert.IsAssignableFrom <List <Subject> >(viewResult.Model);
        }
        public void DeleteSubject_ValidSubject_ReturnsNoContext()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            // act
            var deleteResult           = sc.DeleteSubject(1);
            var getresult              = sc.GetSubjects(null).Result as OkObjectResult;
            List <SubjectDto> subjects = getresult.Value as List <SubjectDto>;

            // assert
            Assert.IsInstanceOf <NoContentResult>(deleteResult);
            Assert.AreEqual(4, subjects.Count);
        }
        public async Task Return_Edit_View_With_Subjects_List()
        {
            // Arrange
            var fixture            = new Fixture();
            var context            = GetFakeContext();
            var SubjectsController = new SubjectsController(context);
            var subject            = fixture.Create <Subject>();

            subject.SubjectId = context.Subjects.FirstOrDefault().SubjectId;
            // Act
            var result = await SubjectsController.Edit(subject.SubjectId);

            // Assert
            Assert.NotNull(result);
            var viewResult = Assert.IsAssignableFrom <ViewResult>(result);
        }
        public void GetSubject_ReturnsCorrectSubject()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            // act
            var        result  = sc.GetSubject(1).Result as OkObjectResult;
            SubjectDto subject = result.Value as SubjectDto;

            // assert
            Assert.AreEqual(1, subject.subjectId);
            Assert.AreEqual("Daniel", subject.firstName);
            Assert.AreEqual("Garsden", subject.lastName);
            Assert.AreEqual("19/08/1976", subject.dateOfBirth.ToString("d"));
        }
        public async System.Threading.Tasks.Task TestPostSubject_Succesfull()
        {
            //Arrange
            var context    = TestingUtilities.CreateInMemoryDatabaseContext("PostSubjectSuccefull");
            var testEntity = new Subject()
            {
                Id = 42
            };
            var controller = new SubjectsController(context);
            //Act
            var result = await controller.PostSubjects(testEntity);

            //Assert
            Assert.IsType <CreatedResult>(result.Result);
            Assert.Equal(testEntity, context.Subjects.Last());
            context.Database.EnsureDeleted();
        }
Exemplo n.º 26
0
        public void Subjects_Controller_Test_On_Index()
        {
            //Arrange
            var repo = Substitute.For <IRepository>();
            ICollection <Subject> expectedSubjects = new[] { new Subject() };

            repo.GetAll <Subject>().Returns(expectedSubjects);
            var sut = new SubjectsController(repo);

            //Act
            var actual = sut.Index().Result as ViewResult;

            //Assert
            Assert.IsInstanceOfType(actual, typeof(ViewResult));
            var viewResult = actual;

            Assert.AreEqual(expectedSubjects, viewResult.Model);
        }
        public void AddSubject_ValidObject_ReturnsCreateAtRouteResult()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            SubjectForCreationDto subject = new SubjectForCreationDto
            {
                FirstName   = "Zita",
                LastName    = "Garsden Kabok",
                DateOfBirth = new DateTime(1980, 05, 03),
                TitleId     = 2
            };

            // act
            var result = sc.CreateSubject(subject);

            // assert
            Assert.IsInstanceOf <CreatedAtRouteResult>(result);
        }
        public void UpdateSubject_InValidSubject_ReturnsNotFound()
        {
            // arrange
            FakeSubjectOrderRepository fake = new FakeSubjectOrderRepository();
            SubjectsController         sc   = new SubjectsController(fake);

            SubjectDto subject = new SubjectDto
            {
                firstName   = "Mark",
                lastName    = "Garsden",
                dateOfBirth = new DateTime(1980, 2, 11),
                titleId     = 1
            };

            // act
            var result = sc.UpdateSubject(6, subject);

            // assert
            Assert.IsInstanceOf <NotFoundResult>(result);
        }
Exemplo n.º 29
0
        public void Subjects_Controller_Test_On_Delete_Confirmed_With_Existent_Id()
        {
            //Arrange
            Guid   id          = new Guid("f616cc8c-2223-4145-b7d0-232a1f6f0795");
            string title       = "TestT";
            int    noOfCredits = 10;

            Subject expectedSubject = new Subject(title, noOfCredits);

            expectedSubject.Id = id;

            var repo = Substitute.For <IRepository>();
            var sut  = new SubjectsController(repo);

            repo.GetById <Subject>(id).Returns(expectedSubject);
            //Act
            var actual = sut.DeleteConfirmed(id).Result;

            //Assert
            Assert.IsInstanceOfType(actual, typeof(RedirectToActionResult));
        }
        public async System.Threading.Tasks.Task TestDeleteSubject_NotFound_OnWrongId()
        {
            //Arrange
            var context    = TestingUtilities.CreateInMemoryDatabaseContext("DeleteSubjectSuccefull");
            var testEntity = new Subject()
            {
                Id = 42
            };

            context.Subjects.Add(testEntity);
            context.SaveChanges();
            var controller = new SubjectsController(context);
            //Act
            var result = await controller.DeleteSubject(44);

            //Assert
            Assert.IsType <NotFoundResult>(result);
            Assert.True(context.Subjects.Contains(testEntity));
            Assert.Equal(1, context.Subjects.Where(x => x.Id == 42).Count());
            context.Database.EnsureDeleted();
        }