public void ConstructorShould_SetPassedData_WhenDataIsNotNull() { var repositoryMock = new Mock <IRepository <Question> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var factoryMock = new Mock <IQuestionFactory>(); var service = new Services.QuestionService(repositoryMock.Object, unitOfWorkMock.Object, factoryMock.Object); Assert.IsNotNull(service); }
public void GetAllShould_CallRepositoryPropertyAll() { var repositoryMock = new Mock <IRepository <Question> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var factoryMock = new Mock <IQuestionFactory>(); var service = new Services.QuestionService(repositoryMock.Object, unitOfWorkMock.Object, factoryMock.Object); service.GetAll(); repositoryMock.Verify(r => r.All, Times.Once); }
public void AddQuestionShould_CallFactoryMethodCreateQuestion(string name, string email, string subject, string message) { var repositoryMock = new Mock <IRepository <Question> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var factoryMock = new Mock <IQuestionFactory>(); var service = new Services.QuestionService(repositoryMock.Object, unitOfWorkMock.Object, factoryMock.Object); service.AddQuestion(name, email, subject, message); factoryMock.Verify(f => f.CreateQuestion(name, email, subject, message)); }
public void AddQuestionShould_ReturnCorrectQuestion(string name, string email, string subject, string message) { var repositoryMock = new Mock <IRepository <Question> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var factoryMock = new Mock <IQuestionFactory>(); var question = new Question() { SenderEmail = email, SenderName = name, Subject = subject, QuestionMessage = message }; factoryMock.Setup(f => f.CreateQuestion(name, email, subject, message)).Returns(question); var service = new Services.QuestionService(repositoryMock.Object, unitOfWorkMock.Object, factoryMock.Object); var result = service.AddQuestion(name, email, subject, message); Assert.AreSame(question, result); }
public void AddQuestionShould_CallUnitOfWorkMethodCommit(string name, string email, string subject, string message) { var repositoryMock = new Mock <IRepository <Question> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var factoryMock = new Mock <IQuestionFactory>(); var question = new Question() { SenderEmail = email, SenderName = name, Subject = subject, QuestionMessage = message }; factoryMock.Setup(f => f.CreateQuestion(name, email, subject, message)).Returns(question); var service = new Services.QuestionService(repositoryMock.Object, unitOfWorkMock.Object, factoryMock.Object); service.AddQuestion(name, email, subject, message); unitOfWorkMock.Verify(f => f.Commit()); }