Example #1
0
        public void DeletePetCommand_Execute_Should_Call_UserRepo()
        {
            // Arrange
            var users  = new Mock <IUserRepository>();
            var pets   = new Mock <IPetRepository>();
            var writer = new Mock <IWriter>();
            var user   = new Mock <IUser>();

            user.SetupGet(m => m.PhoneNumber).Returns("123456");
            users.SetupGet(m => m.Users).Returns(new List <IUser>()
            {
                user.Object
            });

            var deletePetCommand = new DeletePetCommand(pets.Object, users.Object, writer.Object);

            deletePetCommand.Parameters = new List <string> {
                "deletepet", "123456", "Kitty"
            };

            // Act
            deletePetCommand.Execute();

            // Assert
            users.Verify(m => m.Users, Times.Once);
        }
Example #2
0
        public void DeletePetCommand_Execute_Should_Throw_ArgumentNullException_When_User_Not_Found()
        {
            // Arrange
            var users  = new Mock <IUserRepository>();
            var pets   = new Mock <IPetRepository>();
            var writer = new Mock <IWriter>();
            var pet    = new Mock <IPet>();
            var user   = new Mock <IUser>();

            user.SetupGet(m => m.PhoneNumber).Returns("123456");
            users.SetupGet(m => m.Users).Returns(new List <IUser>());

            var deletePetCommand = new DeletePetCommand(pets.Object, users.Object, writer.Object);

            deletePetCommand.Parameters = new List <string> {
                "deletepet", "123456", "Kitty"
            };

            // Act & Assert
            Assert.ThrowsException <ArgumentNullException>(() => deletePetCommand.Execute());
        }