public void GetPersonById() { // ARRANGE ApplicationConfiguration appApplicationConfiguration = new ApplicationConfiguration(); PersonRepository personRepository = new PersonRepository(_session); DeviceRepository deviceRepository = new DeviceRepository(_session); SessionRepository sessionRepository = new SessionRepository(_session); ScheduledEmailRepository scheduledEmailRepository = new ScheduledEmailRepository(_session); EmailNotificationService emailNotificationService = new EmailNotificationService(appApplicationConfiguration); ScheduledEmailService scheduledEmailService = new ScheduledEmailService(scheduledEmailRepository, emailNotificationService, personRepository); PersonService personService = new PersonService(personRepository, deviceRepository, sessionRepository, emailNotificationService, scheduledEmailService, appApplicationConfiguration, scheduledEmailRepository); SessionService sessionService = new SessionService(sessionRepository); PersonController personController = new PersonController(sessionService, personService) { Configuration = new HttpConfiguration(), Request = new HttpRequestMessage() }; personController.Request.Headers.Add("XClientId", Guid.NewGuid().ToString()); personController.Request.RequestUri = new Uri("http://localhost?xerxes=1"); // Authentication shortcut // ACT var personModel = personController.GetPersonById(Convert.ToInt32(appApplicationConfiguration.GetSetting("personId"))); // ASSERT Assert.IsNotNull(personModel); }
public void LoginSucceed() { ApplicationConfiguration appApplicationConfiguration = new ApplicationConfiguration(); PersonRepository personRepository = new PersonRepository(_session); EmailNotificationService emailNotificationService = new EmailNotificationService(appApplicationConfiguration); ScheduledEmailRepository scheduledEmailRepository = new ScheduledEmailRepository(_session); ScheduledEmailService scheduledEmailService = new ScheduledEmailService(scheduledEmailRepository, emailNotificationService, personRepository); DeviceRepository deviceRepository = new DeviceRepository(_session); SessionRepository sessionRepository = new SessionRepository(_session); PersonService personService = new PersonService(personRepository, deviceRepository, sessionRepository, emailNotificationService, scheduledEmailService, appApplicationConfiguration, scheduledEmailRepository); SessionService apiSessionService = new SessionService(sessionRepository); DeviceService deviceService = new DeviceService(deviceRepository, personRepository); AuthenticationService authenticationService = new AuthenticationService(personRepository); AuthController authController = new AuthController(apiSessionService, personService, authenticationService, deviceService) { Configuration = new HttpConfiguration(), Request = new HttpRequestMessage() }; authController.Request.Headers.Add("XClientId", "00000000000000000000000000000000"); // Wanna make this my NIHApp API KEY AuthModelLight authModelLight = new AuthModelLight { EmailAddress = appApplicationConfiguration.GetSetting("unitTestEmail"), Password = appApplicationConfiguration.GetSetting("unitPass") }; string jsonString = JsonConvert.SerializeObject(authModelLight); AuthModelLight result = authController.VerifyByPost(authModelLight); Assert.AreNotEqual(result.UserId, 0); }
public void CreatePerson() { ApplicationConfiguration appApplicationConfiguration = new ApplicationConfiguration(); PersonRepository personRepository = new PersonRepository(_session); ScheduledEmailRepository scheduledEmailRepository = new ScheduledEmailRepository(_session); EmailNotificationService emailNotificationService = new EmailNotificationService(appApplicationConfiguration); ScheduledEmailService scheduledEmailService = new ScheduledEmailService(scheduledEmailRepository, emailNotificationService, personRepository); DeviceRepository deviceRepository = new DeviceRepository(_session); SessionRepository sessionRepository = new SessionRepository(_session); PersonService personService = new PersonService(personRepository, deviceRepository, sessionRepository, emailNotificationService, scheduledEmailService, appApplicationConfiguration, scheduledEmailRepository); SessionService sessionService = new SessionService(sessionRepository); DeviceService deviceService = new DeviceService(deviceRepository, personRepository); AuthenticationService authenticationService = new AuthenticationService(personRepository); AuthController authController = new AuthController(sessionService, personService, authenticationService, deviceService) { Configuration = new HttpConfiguration(), Request = new HttpRequestMessage() }; authController.Request.Headers.Add("XClientId", "00000000000000000000000000000000"); PersonRegisterModel personRegisterModel = new PersonRegisterModel() { // assign the data to model properties here }; string jsonString = JsonConvert.SerializeObject(personRegisterModel); AuthModelLight authModelLight = authController.CreatePerson(personRegisterModel); Assert.AreNotEqual(authModelLight.UserId, 0); }
public void UpdatePerson() { // ARRANGE ApplicationConfiguration appApplicationConfiguration = new ApplicationConfiguration(); PersonRepository personRepository = new PersonRepository(_session); DeviceRepository deviceRepository = new DeviceRepository(_session); SessionRepository sessionRepository = new SessionRepository(_session); ScheduledEmailRepository scheduledEmailRepository = new ScheduledEmailRepository(_session); EmailNotificationService emailNotificationService = new EmailNotificationService(appApplicationConfiguration); ScheduledEmailService scheduledEmailService = new ScheduledEmailService(scheduledEmailRepository, emailNotificationService, personRepository); PersonService personService = new PersonService(personRepository, deviceRepository, sessionRepository, emailNotificationService, scheduledEmailService, appApplicationConfiguration, scheduledEmailRepository); SessionService sessionService = new SessionService(sessionRepository); PersonController personController = new PersonController(sessionService, personService) { Configuration = new HttpConfiguration(), Request = new HttpRequestMessage() }; personController.Request.Headers.Add("XClientId", Guid.NewGuid().ToString()); personController.Request.RequestUri = new Uri("http://localhost?xerxes=1"); // Authentication shortcut PersonModel personModel = new PersonModel() { ObjectId = Convert.ToInt32(appApplicationConfiguration.GetSetting("personId")), Name = "Name", Surname = "Surname", Email = appApplicationConfiguration.GetSetting("unitTestEmail"), CreateDate = new DateTime(2016, 09, 15, 9, 00, 00), ModifiedDate = new DateTime(2016, 09, 15, 9, 00, 00), }; // ACT personModel = personController.Update(personModel); // ASSERT Assert.AreNotEqual(personModel.ModifiedDate, new DateTime(2016, 09, 15, 9, 00, 00)); }
public void LoginInvalidCredentials() { ApplicationConfiguration appApplicationConfiguration = new ApplicationConfiguration(); PersonRepository personRepository = new PersonRepository(_session); AuthenticationService authenticationService = new AuthenticationService(personRepository); ScheduledEmailRepository scheduledEmailRepository = new ScheduledEmailRepository(_session); EmailNotificationService emailNotificationService = new EmailNotificationService(appApplicationConfiguration); ScheduledEmailService scheduledEmailService = new ScheduledEmailService(scheduledEmailRepository, emailNotificationService, personRepository); DeviceRepository deviceRepository = new DeviceRepository(_session); SessionRepository apiSessionRepository = new SessionRepository(_session); PersonService personService = new PersonService(personRepository, deviceRepository, apiSessionRepository, emailNotificationService, scheduledEmailService, appApplicationConfiguration, scheduledEmailRepository); SessionService apiSessionService = new SessionService(apiSessionRepository); DeviceService deviceService = new DeviceService(deviceRepository, personRepository); AuthController authController = new AuthController(apiSessionService, personService, authenticationService, deviceService) { Configuration = new HttpConfiguration(), Request = new HttpRequestMessage() }; authController.Request.Headers.Add("XClientId", "00000000000000000000000000000000"); AuthModelLight authModelLight = new AuthModelLight { EmailAddress = "empty", Password = "******" }; string jsonString = JsonConvert.SerializeObject(authModelLight); AuthModelLight result = authController.VerifyByPost(authModelLight); Assert.AreEqual(result.Desc, ApplicationConfiguration.LoginInvalidCredentials); }