public async Task ShouldGetEditPage() { //Arrange var guid = Guid.NewGuid(); var mock = new Mock <IFundManagerRepository>(); var fundManagerModel = new FundManager(); mock.SetupAllProperties(); mock.Setup(m => m.Get(guid)).Returns(Task.FromResult(fundManagerModel)); var mockFundRepo = new Mock <IFundRepository>(); IEnumerable <Fund> emptyFunds = new List <Fund>(); mockFundRepo.Setup(m => m.GetFunds(new Guid())) .Returns(Task.FromResult(emptyFunds)) .Verifiable(); var controller = new FundManagerController(mock.Object, mockFundRepo.Object); var expected = new FundManager().ToExpectedObject(); //Act var actual = await controller.Edit(guid); //Assert Assert.That(actual, Is.TypeOf <ViewResult>()); mock.Verify(); Assert.That(((ViewResult)actual).Model, Is.EqualTo(expected)); }
public async Task ShouldGetIndexPage() { //Arrange var mockFundManRepo = new Mock <IFundManagerRepository>(); IEnumerable <FundManager> fundManagerModels = new FundManager[0]; mockFundManRepo.Setup(m => m.GetAll()) .Returns(Task.FromResult(fundManagerModels)) .Verifiable(); var mockFundRepo = new Mock <IFundRepository>(); IEnumerable <Fund> emptyFunds = new List <Fund>(); mockFundRepo.Setup(m => m.GetFunds(new Guid())) .Returns(Task.FromResult(emptyFunds)) .Verifiable(); var controller = new FundManagerController(mockFundManRepo.Object, mockFundRepo.Object); //NUnit-IS.EqualTo compares single dimensional arrays, so this will match. var expected = new FundManager[0]; //Act var actual = await controller.Index(); //Assert Assert.That(actual, Is.TypeOf <ViewResult>()); Assert.That(((ViewResult)actual).Model, Is.EqualTo(expected)); mockFundManRepo.Verify(); }
public async Task ShouldGetRedirectedToErrorFromDeletePageIfNullGuid() { //Arrange var validGuid = Guid.NewGuid(); var mock = new Mock <IFundManagerRepository>(); var fundManagerModel = new FundManager(); mock.SetupAllProperties(); mock.Setup(m => m.Get(validGuid)).Returns(Task.FromResult(fundManagerModel)); var mockFundRepo = new Mock <IFundRepository>(); IEnumerable <Fund> emptyFunds = new List <Fund>(); mockFundRepo.Setup(m => m.GetFunds(new Guid())) .Returns(Task.FromResult(emptyFunds)) .Verifiable(); var controller = new FundManagerController(mock.Object, mockFundRepo.Object); //Act var actual = await controller.Delete(null); //Assert Assert.That(actual, Is.TypeOf <RedirectToRouteResult>()); var redir = (RedirectToRouteResult)actual; Assert.That("errorMessage", Is.EqualTo(redir.RouteValues.Keys.First())); mock.Verify(); }
public async Task ShouldGetIndexPageIfSuccessfulDelete() { //Arrange var validGuid = Guid.NewGuid(); var mock = new Mock <IFundManagerRepository>(); mock.SetupAllProperties(); mock.Setup(m => m.Delete(validGuid)).Returns(Task.FromResult(true)); var mockFundRepo = new Mock <IFundRepository>(); IEnumerable <Fund> emptyFunds = new List <Fund>(); mockFundRepo.Setup(m => m.GetFunds(new Guid())) .Returns(Task.FromResult(emptyFunds)) .Verifiable(); var controller = new FundManagerController(mock.Object, mockFundRepo.Object); //Act var actual = await controller.Delete(validGuid); //Assert Assert.That(actual, Is.TypeOf <RedirectToRouteResult>()); var redir = (RedirectToRouteResult)actual; Assert.That("Index", Is.EqualTo(redir.RouteValues.Values.First())); mock.Verify(); }
public async Task ShouldGetAll() { var mock = new Mock <IFundManagerRepository>(); var controller = new FundManagerController(mock.Object); var valueFunction = new[] { new FundManager() }.AsQueryable(); mock.Setup(m => m.GetAll()).Returns(Task.FromResult(valueFunction)); var result = await controller.Get(); Assert.That(result.Count(), Is.EqualTo(1)); }
public async void ShouldGetIndexPage() { var mock = new Mock <IFundManagerModelRepository>(); var fundManagerModels = new FundManagerModel[0].AsEnumerable(); mock.Setup(m => m.GetAll()).Returns(Task.FromResult(fundManagerModels)); var controller = new FundManagerController(mock.Object); var result = await controller.Index(1, string.Empty, null); Assert.That(result, Is.TypeOf <ViewResult>()); mock.Verify(); Assert.That(((ViewResult)result).Model, Is.EqualTo(fundManagerModels)); }
public async void ShouldGetIndexPageIfSuccessfulDelete() { var validGuid = Guid.NewGuid(); var mock = new Mock <IFundManagerRepository>(); mock.SetupAllProperties(); mock.Setup(m => m.Delete(validGuid)).Returns(Task.FromResult(true)); var controller = new FundManagerController(mock.Object); var result = await controller.Delete(validGuid); Assert.That(result, Is.TypeOf <RedirectToRouteResult>()); mock.Verify(); }
public async Task ShouldGet() { var mock = new Mock <IFundManagerRepository>(); var controller = new FundManagerController(mock.Object); var newGuid = Guid.NewGuid(); var fundManager = new FundManager(); mock.Setup(m => m.GetBy(newGuid)).Returns(Task.FromResult(fundManager)); var result = controller.Get(newGuid); mock.Verify(); Assert.That(await result, Is.EqualTo(fundManager)); }
public async void ShouldGetDetailsPage() { var guid = Guid.NewGuid(); var mock = new Mock <IFundManagerModelRepository>(); var fundManagerModel = new FundManagerModel(); mock.Setup(m => m.Get(guid)).Returns(Task.FromResult(fundManagerModel)); var controller = new FundManagerController(mock.Object); var result = await controller.Details(guid); Assert.That(result, Is.TypeOf <ViewResult>()); mock.Verify(); Assert.That(((ViewResult)result).Model, Is.EqualTo(fundManagerModel)); }
public async void ShouldGetRedirectedToErrorFromEditPageIfNullGuid() { var validGuid = Guid.NewGuid(); var mock = new Mock <IFundManagerRepository>(); var fundManagerModel = new FundManager(); mock.SetupAllProperties(); mock.Setup(m => m.Get(validGuid)).Returns(Task.FromResult(fundManagerModel)); var controller = new FundManagerController(mock.Object); var result = await controller.Edit((Guid?)null); Assert.That(result, Is.TypeOf <RedirectToRouteResult>()); mock.Verify(); }
public async Task ShouldGetAll() { //Arrange var mock = new Mock <IFundManagerRepository>(); var controller = new FundManagerController(mock.Object); IEnumerable <FundManager> valueFunction = new[] { new FundManager() }; mock.Setup(m => m.GetAll()) .Returns(Task.FromResult(valueFunction)) .Verifiable(); //Act var result = await controller.Get(); //Assert Assert.That(result.Count(), Is.EqualTo(1)); }
public async void ShouldCreateFundManage() { var mock = new Mock <IFundManagerModelRepository>(); var fm = new FundManagerModel() { Biography = "Some", Location = Location.London, ManagedSince = DateTime.Now, Name = "Fred" }; mock.Setup(m => m.Create(fm)).Returns(Task.FromResult(fm)); var controller = new FundManagerController(mock.Object); var result = await controller.Create(fm); Assert.That(result, Is.TypeOf <RedirectToRouteResult>()); mock.Verify(); }
public async void ShouldGetIndexPage() { //Arrange var mock = new Mock <IFundManagerRepository>(); IEnumerable <FundManager> fundManagerModels = new FundManager[0]; mock.Setup(m => m.GetAll()) .Returns(Task.FromResult(fundManagerModels)) .Verifiable(); var controller = new FundManagerController(mock.Object); //Act var result = await controller.Index(); //Assert Assert.That(result, Is.TypeOf <ViewResult>()); Assert.That(((ViewResult)result).Model, Is.EqualTo(fundManagerModels)); mock.Verify(); }
public async void ShouldEditFundManage() { var guid = Guid.NewGuid(); var mock = new Mock <IFundManagerModelRepository>(); var fm = new FundManagerModel() { Id = guid, Biography = "Some1", Location = Location.London, ManagedSince = DateTime.Now, Name = "Fred1" }; mock.Setup(m => m.Update(fm)).Returns(Task.FromResult(fm)); var controller = new FundManagerController(mock.Object); var result = await controller.Edit(fm); Assert.That(result, Is.TypeOf <ViewResult>()); mock.Verify(); Assert.That(((ViewResult)result).Model, Is.EqualTo(fm)); }