public void Create_Valid_RedirectsToIndex() { // ARRANGE var mock = new Mock <Repository <Asset> >(); mock.Setup(r => r.Create(It.IsAny <Asset>())). Returns(new Asset { AssetId = 1, Model = "123" }); AssetViewModel avm = new AssetViewModel { AssetId = 1, Model = "123" }; AssetService assetService = new AssetService(string.Empty); assetService.Repository = mock.Object; AssetItemsController controller = new AssetItemsController(); controller.AssetService = assetService; // ACT RedirectToRouteResult result = controller.Create(avm) as RedirectToRouteResult; // ASSERT Assert.AreEqual("action", result.RouteValues.Keys.First()); Assert.AreEqual("Index", result.RouteValues.Values.First()); }
public void Index_CountAssets_HasAssets() { // ARRANGE var mock = new Mock <IRepository <Asset> >(); mock.Setup(r => r.GetAll()).Returns(MultipleAssets()); AssetService assetService = new AssetService(string.Empty); assetService.Repository = mock.Object; AssetItemsController controller = new AssetItemsController(); controller.AssetService = assetService; // ACT ViewResult result = controller.Index() as ViewResult; var model = result.Model as IEnumerable <AssetViewModel>; // ASSERT Assert.AreEqual(2, model.Count()); }
public void Create_InValidModelState_ReturnsErrors() { // ARRANGE var mock = new Mock <Repository <Asset> >(); AssetService assetService = new AssetService(string.Empty); assetService.Repository = mock.Object; AssetViewModel avm = new AssetViewModel(); AssetItemsController controller = new AssetItemsController(); controller.AssetService = assetService; controller.ModelState.Clear(); controller.ModelState.AddModelError("Model is a required field", "Test Exception"); // ACT ViewResult result = controller.Create(avm) as ViewResult; // ASSERT Assert.AreEqual(EnumHelper.Alerts.Error.ToString(), result.TempData.Keys.First()); }
public void Detail_ValidId_Loaded() { // ARRANGE var mock = new Mock <Repository <Asset> >(); mock.Setup(r => r.Find(It.IsAny <Expression <Func <Asset, bool> > >())).Returns( MultipleAssets()); AssetService assetService = new AssetService(string.Empty); assetService.Repository = mock.Object; AssetItemsController controller = new AssetItemsController(); controller.AssetService = assetService; // ACT ViewResult result = controller.Details(1) as ViewResult; // ASSERT var model = result.Model as AssetViewModel; Assert.AreEqual(MultipleAssets().First().AssetId, model.AssetId); Assert.AreEqual(MultipleAssets().First().Model, model.Model); }