Пример #1
0
        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);
        }
Пример #2
0
        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);
        }
Пример #3
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);
        }
Пример #4
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));
        }
Пример #5
0
        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);
        }