public void LogProjectUploadingTest() { //Arrange const string projectId = "projectId"; const string projectName = "projectName"; const ProjectType projectType = ProjectType.Tag; const ProjectSubtype projectSubtype = ProjectSubtype.Friend; var timeSpan = new DateTime(2013, 7, 16); var actionDomain = new DomainActionData(); var project = new FakeDomainStatProject(); var eventLogger = new Mock<IEventLogger>(); var statDomainFactory = new Mock<IStatDomainFactory>(); var dateTimeWrapper = new Mock<IDateTimeWrapper>(); var projectUploadingEventService = new ProjectUploadingEventService(eventLogger.Object,statDomainFactory.Object,dateTimeWrapper.Object); statDomainFactory.Setup(m => m.CreateProject(actionDomain, projectId, projectName, projectType.ToString(), projectSubtype.ToString())).Returns(project); dateTimeWrapper.Setup(m => m.CurrentDateTime()).Returns(timeSpan); //Act projectUploadingEventService.LogProjectUploading(actionDomain, projectId, projectName, projectType, projectSubtype); //Assert eventLogger.Verify(m => m.TrackProjectUploadingEvent(project, timeSpan), Times.Once()); }
public void LogProjectUploadingTest() { //Arrange const string projectId = "projectId"; const string projectName = "projectName"; const ProjectType projectType = ProjectType.Tag; const ProjectSubtype projectSubtype = ProjectSubtype.Friend; var timeSpan = new DateTime(2013, 7, 16); var actionDomain = new DomainActionData(); var project = new FakeDomainStatProject(); var eventLogger = new Mock <IEventLogger>(); var statDomainFactory = new Mock <IStatDomainFactory>(); var dateTimeWrapper = new Mock <IDateTimeWrapper>(); var projectUploadingEventService = new ProjectUploadingEventService(eventLogger.Object, statDomainFactory.Object, dateTimeWrapper.Object); statDomainFactory.Setup(m => m.CreateProject(actionDomain, projectId, projectName, projectType.ToString(), projectSubtype.ToString())).Returns(project); dateTimeWrapper.Setup(m => m.CurrentDateTime()).Returns(timeSpan); //Act projectUploadingEventService.LogProjectUploading(actionDomain, projectId, projectName, projectType, projectSubtype); //Assert eventLogger.Verify(m => m.TrackProjectUploadingEvent(project, timeSpan), Times.Once()); }