public void ShouldNot_RiseException_WhenListOfEmployeeIsEmpty() { //arrange var repository = Substitute.For<IRepository>(); repository.Query<Person>().Returns(new List<Person>().AsQueryable()); var employeesController = new EmployeesController(repository, appContext); //act employeesController.Index(); //assert Assert.Pass(); }
public void ShouldNot_ReturnNullAnd_ShouldCallMethodGetOfIRepository_WhenRequestedEditWith1Parameter() { //arrange var employee = new Person { Id = 3, Role = PersonRole.Employee }; var repository = Substitute.For<IRepository>(); repository.Get<Person>(3).Returns(employee); var employeeController = new EmployeesController(repository, appContext); //act var viewModel = employeeController.Edit(3).Model as Person; //assert viewModel.Should().NotBeNull(); repository.Received().Get<Person>(3); }
public void Should_ReturnListOf200Employees_WhenRequestedIndexWith200EmployeesExistsInRepository() { //arrange var data = Builder<Person>.CreateListOfSize(500) .All() .With(x => x.Role = PersonRole.Client) .Random(200) .With(x => x.Role = PersonRole.Employee) .Build() .AsQueryable(); var repository = Substitute.For<IRepository>(); repository.Query<Person>().Returns(data); var employeesController = new EmployeesController(repository); //act var model = (IEnumerable<Person>)employeesController.Index().Model; //assert model.Count().Should().Be(200); }
public void Should_GoToDetailsViewAndCallSaveMethodOfIRepository_WhenRequestedEditWith2Parameters() { //arrange var employee = new Person { Id = 1, Role = PersonRole.Employee }; var repository = Substitute.For<IRepository>(); repository.Query<Person>().ReturnsForAnyArgs(new List<Person>{employee}.AsQueryable()); var employeeController = new EmployeesController(repository, appContext); //act employeeController.Edit(1, employee); //act //viewResult.ViewName.Should().Be("Details"); repository.Received().Save(employee); }