public void Cannot_Delete_Invalid_Products() { //布置——创建模仿存储库 Mock<IRoleInfoRepository> mock = new Mock<IRoleInfoRepository>(); RoleInfo[] roles = new RoleInfo[]{ new RoleInfo{RoleID = Guid.NewGuid(), RoleName = "R1",RoleEN="REN1"}, new RoleInfo { RoleID = Guid.NewGuid(), RoleName = "R1" }, new RoleInfo{RoleID = Guid.NewGuid(), RoleName = "R3",RoleEN="REN3"} }; //布置——创建控制器 RolesController controller = new RolesController(mock.Object); //动作——用一个不存在的ID进行删除 controller.Delete(Guid.NewGuid()); //断言 mock.Verify(m => m.DeleteRoleInfo(It.IsAny<RoleInfo>()),Times.Never()); }
public void Can_Delete_Valid_Roles() { //布置——创建一个角色 RoleInfo role = new RoleInfo { RoleID = Guid.NewGuid(), RoleName = "R1" }; //布置——创建模仿存储库 Mock<IRoleInfoRepository> mock = new Mock<IRoleInfoRepository>(); RoleInfo[] roles = new RoleInfo[]{ new RoleInfo{RoleID = Guid.NewGuid(), RoleName = "R1",RoleEN="REN1"}, role, new RoleInfo{RoleID = Guid.NewGuid(), RoleName = "R3",RoleEN="REN3"} }; mock.Setup(m => m.RolesInfo).Returns(roles.AsQueryable()); //布置——创建控制器 RolesController controller = new RolesController(mock.Object); //动作——删除产品 controller.Delete(role.RoleID); //断言 mock.Verify(m => m.DeleteRoleInfo(role)); }