예제 #1
0
 public GlobalCoordinatorService(
     IIdentityUserRegistrationService identityUserRegistrationService,
     INyssContext dataContext,
     ILoggerAdapter loggerAdapter, IVerificationEmailService verificationEmailService, IDeleteUserService deleteUserService)
 {
     _identityUserRegistrationService = identityUserRegistrationService;
     _dataContext              = dataContext;
     _loggerAdapter            = loggerAdapter;
     _verificationEmailService = verificationEmailService;
     _deleteUserService        = deleteUserService;
 }
예제 #2
0
 public ReportsDashboardByHealthRiskService(
     IReportService reportService,
     IDateTimeProvider dateTimeProvider,
     INyssWebConfig config,
     INyssContext nyssContext)
 {
     _reportService = reportService;
     _dateTimeProvider = dateTimeProvider;
     _config = config;
     _nyssContext = nyssContext;
 }
예제 #3
0
 public DataCollectorExportService(
     INyssContext nyssContext,
     IExcelExportService excelExportService,
     IStringsResourcesService stringsResourcesService,
     IAuthorizationService authorizationService)
 {
     _nyssContext             = nyssContext;
     _excelExportService      = excelExportService;
     _stringsResourcesService = stringsResourcesService;
     _authorizationService    = authorizationService;
 }
예제 #4
0
        public ReportsDashboardByFeatureServiceTests()
        {
            IDateTimeProvider dateTimeProvider = new DateTimeProvider();
            var testData = new ReportsDashboardTestData(dateTimeProvider);

            _nyssContext = testData.GetNyssContextMock();
            _config      = Substitute.For <INyssWebConfig>();

            _reportService = Substitute.For <IReportService>();
            _reportsDashboardByDataCollectionPointService = new ReportsDashboardByVillageService(_reportService, dateTimeProvider, _config);
        }
예제 #5
0
        public NationalSocietyAccessService(
            INyssContext nyssContext,
            IAuthorizationService authorizationService)
        {
            _nyssContext          = nyssContext;
            _authorizationService = authorizationService;

            _rolesWithAccessToAllNationalSocieties = new[] { Role.Administrator, Role.GlobalCoordinator };
            // ToDo: Global Coordinator does not have permissions to SMS Gateways, Geographical structure, Projects, etc. but Head Manager does. Investigate and fix later
            _rolesWithAccessAsHeadManager = new[] { Role.GlobalCoordinator, Role.Administrator };
        }
예제 #6
0
 public ReportService(INyssContext nyssContext, IUserService userService, IProjectService projectService, INyssWebConfig config, IAuthorizationService authorizationService,
                      IExcelExportService excelExportService, IStringsResourcesService stringsResourcesService, IDateTimeProvider dateTimeProvider)
 {
     _nyssContext             = nyssContext;
     _userService             = userService;
     _projectService          = projectService;
     _config                  = config;
     _authorizationService    = authorizationService;
     _excelExportService      = excelExportService;
     _stringsResourcesService = stringsResourcesService;
     _dateTimeProvider        = dateTimeProvider;
 }
예제 #7
0
 public ProjectService(
     INyssContext nyssContext,
     ILoggerAdapter loggerAdapter,
     IDateTimeProvider dateTimeProvider, IAuthorizationService authorizationService,
     IDataCollectorService dataCollectorService)
 {
     _nyssContext          = nyssContext;
     _loggerAdapter        = loggerAdapter;
     _dateTimeProvider     = dateTimeProvider;
     _authorizationService = authorizationService;
     _dataCollectorService = dataCollectorService;
 }
예제 #8
0
 public DataCollectorService(
     INyssContext nyssContext,
     INationalSocietyStructureService nationalSocietyStructureService,
     IGeolocationService geolocationService,
     IDateTimeProvider dateTimeProvider,
     IAuthorizationService authorizationService)
 {
     _nyssContext = nyssContext;
     _nationalSocietyStructureService = nationalSocietyStructureService;
     _geolocationService   = geolocationService;
     _dateTimeProvider     = dateTimeProvider;
     _authorizationService = authorizationService;
 }
예제 #9
0
 public AuthenticationServiceTests()
 {
     _userIdentityService = Substitute.For <IUserIdentityService>();
     _nyssContext         = Substitute.For <INyssContext>();
     _user = new AdministratorUser
     {
         EmailAddress = UserEmail,
         Name         = UserName
     };
     _nyssContext.Users = new List <User> {
         _user
     }.AsQueryable().BuildMockDbSet();
     _authenticationService = new AuthenticationService(_userIdentityService, _nyssContext);
 }
예제 #10
0
 public AlertReportService(
     INyssWebConfig config,
     INyssContext nyssContext,
     IAlertService alertService,
     IQueueService queueService,
     IDateTimeProvider dateTimeProvider,
     IAuthorizationService authorizationService)
 {
     _config               = config;
     _nyssContext          = nyssContext;
     _alertService         = alertService;
     _queueService         = queueService;
     _dateTimeProvider     = dateTimeProvider;
     _authorizationService = authorizationService;
 }
예제 #11
0
        public SmsEagleHandlerTests()
        {
            var reportMessageServiceMock = Substitute.For <IReportMessageService>();

            _nyssContextMock = Substitute.For <INyssContext>();
            var loggerAdapterMock = Substitute.For <ILoggerAdapter>();

            _dateTimeProviderMock = Substitute.For <IDateTimeProvider>();
            var stringsResourcesServiceMock = Substitute.For <IStringsResourcesService>();
            var queuePublisherServiceMock   = Substitute.For <IQueuePublisherService>();
            var alertServiceMock            = Substitute.For <IAlertService>();

            _smsEagleHandler = new SmsEagleHandler(reportMessageServiceMock, _nyssContextMock, loggerAdapterMock, _dateTimeProviderMock,
                                                   stringsResourcesServiceMock, queuePublisherServiceMock, alertServiceMock);
        }
예제 #12
0
 public NationalSocietyService(
     INyssContext context,
     INationalSocietyAccessService nationalSocietyAccessService,
     ILoggerAdapter loggerAdapter, IAuthorizationService authorizationService,
     IManagerService managerService, ITechnicalAdvisorService technicalAdvisorService,
     ISmsGatewayService smsGatewayService)
 {
     _nyssContext = context;
     _nationalSocietyAccessService = nationalSocietyAccessService;
     _loggerAdapter           = loggerAdapter;
     _authorizationService    = authorizationService;
     _managerService          = managerService;
     _technicalAdvisorService = technicalAdvisorService;
     _smsGatewayService       = smsGatewayService;
 }
예제 #13
0
        public NationalSocietyServiceTests()
        {
            _nyssContextMock = Substitute.For <INyssContext>();
            var loggerAdapterMock    = Substitute.For <ILoggerAdapter>();
            var authorizationService = Substitute.For <IAuthorizationService>();

            authorizationService.GetCurrentUserName().Returns("yo");
            _managerServiceMock          = Substitute.For <IManagerService>();
            _technicalAdvisorServiceMock = Substitute.For <ITechnicalAdvisorService>();

            _smsGatewayServiceMock = Substitute.For <ISmsGatewayService>();

            _nationalSocietyService = new NationalSocietyService(_nyssContextMock, Substitute.For <INationalSocietyAccessService>(), loggerAdapterMock,
                                                                 authorizationService, _managerServiceMock, _technicalAdvisorServiceMock, _smsGatewayServiceMock);

            _testData = new NationalSocietyServiceTestData(_nyssContextMock, _smsGatewayServiceMock);
        }
예제 #14
0
 public SmsEagleHandler(
     IReportMessageService reportMessageService,
     INyssContext nyssContext,
     ILoggerAdapter loggerAdapter,
     IDateTimeProvider dateTimeProvider,
     IStringsResourcesService stringsResourcesService,
     IQueuePublisherService queuePublisherService,
     IAlertService alertService)
 {
     _reportMessageService    = reportMessageService;
     _nyssContext             = nyssContext;
     _loggerAdapter           = loggerAdapter;
     _dateTimeProvider        = dateTimeProvider;
     _queuePublisherService   = queuePublisherService;
     _alertService            = alertService;
     _stringsResourcesService = stringsResourcesService;
 }
예제 #15
0
 public AlertService(
     INyssContext nyssContext,
     IEmailPublisherService emailPublisherService,
     IEmailTextGeneratorService emailTextGeneratorService,
     INyssWebConfig config,
     ISmsTextGeneratorService smsTextGeneratorService,
     ILoggerAdapter loggerAdapter,
     IDateTimeProvider dateTimeProvider,
     IAuthorizationService authorizationService)
 {
     _nyssContext               = nyssContext;
     _emailPublisherService     = emailPublisherService;
     _emailTextGeneratorService = emailTextGeneratorService;
     _smsTextGeneratorService   = smsTextGeneratorService;
     _loggerAdapter             = loggerAdapter;
     _dateTimeProvider          = dateTimeProvider;
     _authorizationService      = authorizationService;
     _config = config;
 }
예제 #16
0
        public GlobalCoordinatorServiceTests()
        {
            _loggerAdapter = Substitute.For <ILoggerAdapter>();
            _nyssContext   = Substitute.For <INyssContext>();
            _identityUserRegistrationServiceMock = Substitute.For <IIdentityUserRegistrationService>();
            _verificationEmailServiceMock        = Substitute.For <IVerificationEmailService>();
            _deleteUserService = Substitute.For <IDeleteUserService>();

            _globalCoordinatorService =
                new GlobalCoordinatorService(_identityUserRegistrationServiceMock, _nyssContext, _loggerAdapter, _verificationEmailServiceMock, _deleteUserService);

            _identityUserRegistrationServiceMock.CreateIdentityUser(Arg.Any <string>(), Arg.Any <Role>()).Returns(ci => new IdentityUser
            {
                Id    = "123",
                Email = (string)ci[0]
            });

            ArrangeApplicationLanguages();
        }
예제 #17
0
        public DataConsumerServiceTests()
        {
            _loggerAdapter = Substitute.For <ILoggerAdapter>();
            _nyssContext   = Substitute.For <INyssContext>();
            _identityUserRegistrationServiceMock = Substitute.For <IIdentityUserRegistrationService>();
            _verificationEmailServiceMock        = Substitute.For <IVerificationEmailService>();
            _nationalSocietyUserService          = Substitute.For <INationalSocietyUserService>();
            _deleteUserService = Substitute.For <IDeleteUserService>();

            _dataConsumerService = new DataConsumerService(_identityUserRegistrationServiceMock, _nationalSocietyUserService, _nyssContext, _loggerAdapter, _verificationEmailServiceMock,
                                                           _deleteUserService);

            _identityUserRegistrationServiceMock.CreateIdentityUser(Arg.Any <string>(), Arg.Any <Role>()).Returns(ci => new IdentityUser
            {
                Id    = "123",
                Email = (string)ci[0]
            });

            SetupTestNationalSocieties();
        }
예제 #18
0
        public AlertServiceTests()
        {
            var reportLabelingServiceMock = Substitute.For <IReportLabelingService>();

            _queuePublisherServiceMock   = Substitute.For <IQueuePublisherService>();
            _nyssReportApiConfigMock     = Substitute.For <INyssReportApiConfig>();
            _nyssContextMock             = Substitute.For <INyssContext>();
            _loggerAdapterMock           = Substitute.For <ILoggerAdapter>();
            _stringsResourcesServiceMock = Substitute.For <IStringsResourcesService>();
            _dateTimeProviderMock        = Substitute.For <IDateTimeProvider>();
            _alertService = new AlertService(
                _nyssContextMock,
                reportLabelingServiceMock,
                _loggerAdapterMock,
                _queuePublisherServiceMock,
                _nyssReportApiConfigMock,
                _stringsResourcesServiceMock,
                _dateTimeProviderMock
                );

            _testData = new AlertServiceTestData(_nyssContextMock);
        }
예제 #19
0
        public AlertReportServiceTests()
        {
            _nyssContext = Substitute.For <INyssContext>();
            var config = Substitute.For <INyssWebConfig>();

            _alertService         = Substitute.For <IAlertService>();
            _queueService         = Substitute.For <IQueueService>();
            _dateTimeProvider     = Substitute.For <IDateTimeProvider>();
            _authorizationService = Substitute.For <IAuthorizationService>();
            _alertReportService   = new AlertReportService(config, _nyssContext, _alertService, _queueService, _dateTimeProvider, _authorizationService);

            _alertReports = TestData.GetAlertReports();
            var alertReportsDbSet = _alertReports.AsQueryable().BuildMockDbSet();

            _nyssContext.AlertReports.Returns(alertReportsDbSet);

            config.ServiceBusQueues.Returns(new ServiceBusQueuesOptions {
                ReportDismissalQueue = TestData.ReportDismissalQueue
            });

            _dateTimeProvider.UtcNow.Returns(_now);
            _authorizationService.GetCurrentUser().Returns(_currentUser);
        }
예제 #20
0
 public HealthRiskService(INyssContext nyssContext, IAuthorizationService authorizationService)
 {
     _nyssContext          = nyssContext;
     _authorizationService = authorizationService;
 }
예제 #21
0
 protected BaseTestCaseData(INyssContext nyssContextMock)
 {
     _nyssContextMock = nyssContextMock;
 }
예제 #22
0
 public TestCaseData(INyssContext nyssContextMock, Func <EntityData, T> definition)
     : base(nyssContextMock)
 {
     _testCaseDefinition = definition;
 }
예제 #23
0
 public DeleteUserService(IHttpContextAccessor httpContextAccessor, INyssContext nyssContext)
 {
     _httpContextAccessor = httpContextAccessor;
     _nyssContext         = nyssContext;
     SetupUserRolesHierarchy();
 }
예제 #24
0
 public SupervisorService(IIdentityUserRegistrationService identityUserRegistrationService, INationalSocietyUserService nationalSocietyUserService, INyssContext dataContext,
                          ILoggerAdapter loggerAdapter, IVerificationEmailService verificationEmailService, IDeleteUserService deleteUserService, IDateTimeProvider dateTimeProvider)
 {
     _identityUserRegistrationService = identityUserRegistrationService;
     _nationalSocietyUserService      = nationalSocietyUserService;
     _dataContext              = dataContext;
     _loggerAdapter            = loggerAdapter;
     _verificationEmailService = verificationEmailService;
     _deleteUserService        = deleteUserService;
     _dateTimeProvider         = dateTimeProvider;
 }
예제 #25
0
 public TestCaseDataProvider(INyssContext nyssContextMock)
 {
     _nyssContextMock = nyssContextMock;
 }
예제 #26
0
 public ReportLabelingServiceTests()
 {
     _nyssContextMock       = Substitute.For <INyssContext>();
     _reportLabelingService = new ReportLabelingService(_nyssContextMock);
     _testData = new ReportLabelingServiceTestsData(_nyssContextMock);
 }
예제 #27
0
        public ManagerServiceTests()
        {
            _loggerAdapter = Substitute.For <ILoggerAdapter>();
            _nyssContext   = Substitute.For <INyssContext>();
            _identityUserRegistrationServiceMock = Substitute.For <IIdentityUserRegistrationService>();
            _verificationEmailServiceMock        = Substitute.For <IVerificationEmailService>();
            _nationalSocietyUserService          = Substitute.For <INationalSocietyUserService>();
            _deleteUserService = Substitute.For <IDeleteUserService>();

            _managerService = new ManagerService(_identityUserRegistrationServiceMock, _nationalSocietyUserService, _nyssContext, _loggerAdapter, _verificationEmailServiceMock, _deleteUserService);


            var nationalSocieties = new List <NationalSociety>
            {
                new NationalSociety
                {
                    Id   = _nationalSocietyId,
                    Name = "Test national society"
                }
            };
            var applicationLanguages = new List <ApplicationLanguage>();
            var users = new List <User>
            {
                new AdministratorUser
                {
                    Id   = _administratorId,
                    Role = Role.Administrator
                },
                new ManagerUser
                {
                    Id                    = _managerId,
                    Role                  = Role.Manager,
                    EmailAddress          = "*****@*****.**",
                    Name                  = "*****@*****.**",
                    Organization          = "org org",
                    PhoneNumber           = "123",
                    AdditionalPhoneNumber = "321"
                }
            };
            var userNationalSocieties = new List <UserNationalSociety>
            {
                new UserNationalSociety
                {
                    User              = users[1],
                    UserId            = _managerId,
                    NationalSocietyId = _nationalSocietyId,
                    NationalSociety   = nationalSocieties[0]
                }
            };

            users[1].UserNationalSocieties = new List <UserNationalSociety> {
                userNationalSocieties[0]
            };

            var applicationLanguagesDbSet = applicationLanguages.AsQueryable().BuildMockDbSet();
            var usersDbSet                 = users.AsQueryable().BuildMockDbSet();
            var nationalSocietiesDbSet     = nationalSocieties.AsQueryable().BuildMockDbSet();
            var userNationalSocietiesDbSet = userNationalSocieties.AsQueryable().BuildMockDbSet();

            _nyssContext.ApplicationLanguages.Returns(applicationLanguagesDbSet);
            _nyssContext.Users.Returns(usersDbSet);
            _nyssContext.NationalSocieties.Returns(nationalSocietiesDbSet);
            _nyssContext.UserNationalSocieties.Returns(userNationalSocietiesDbSet);

            _identityUserRegistrationServiceMock.CreateIdentityUser(Arg.Any <string>(), Arg.Any <Role>()).Returns(ci => new IdentityUser
            {
                Id    = "123",
                Email = (string)ci[0]
            });
            _nyssContext.NationalSocieties.FindAsync(1).Returns(nationalSocieties[0]);

            _nationalSocietyUserService.GetNationalSocietyUser <ManagerUser>(Arg.Any <int>()).Returns(ci =>
            {
                var user = users.OfType <ManagerUser>().FirstOrDefault(x => x.Id == (int)ci[0]);
                if (user == null)
                {
                    throw new ResultException(ResultKey.User.Registration.UserNotFound);
                }

                return(user);
            });

            _nationalSocietyUserService.GetNationalSocietyUserIncludingNationalSocieties <ManagerUser>(Arg.Any <int>())
            .Returns(ci => _nationalSocietyUserService.GetNationalSocietyUser <ManagerUser>((int)ci[0]));
        }
예제 #28
0
        public SupervisorServiceTests()
        {
            _loggerAdapter = Substitute.For <ILoggerAdapter>();
            _nyssContext   = Substitute.For <INyssContext>();
            _identityUserRegistrationServiceMock = Substitute.For <IIdentityUserRegistrationService>();
            _verificationEmailServiceMock        = Substitute.For <IVerificationEmailService>();
            _nationalSocietyUserService          = Substitute.For <INationalSocietyUserService>();
            _deleteUserService = Substitute.For <IDeleteUserService>();
            var dateTimeProvider          = Substitute.For <IDateTimeProvider>();
            var applicationLanguages      = new List <ApplicationLanguage>();
            var applicationLanguagesDbSet = applicationLanguages.AsQueryable().BuildMockDbSet();

            _nyssContext.ApplicationLanguages.Returns(applicationLanguagesDbSet);

            _supervisorService = new SupervisorService(_identityUserRegistrationServiceMock, _nationalSocietyUserService, _nyssContext, _loggerAdapter, _verificationEmailServiceMock,
                                                       _deleteUserService, dateTimeProvider);

            _identityUserRegistrationServiceMock.CreateIdentityUser(Arg.Any <string>(), Arg.Any <Role>()).Returns(ci => new IdentityUser
            {
                Id    = "123",
                Email = (string)ci[0]
            });


            var nationalSocieties = new List <NationalSociety>
            {
                new NationalSociety
                {
                    Id   = _nationalSocietyId1,
                    Name = "Test national society 1"
                },
                new NationalSociety
                {
                    Id   = _nationalSocietyId2,
                    Name = "Test national society 2"
                }
            };

            var projects = new List <Project>
            {
                new Project
                {
                    Id = _projectId1,
                    NationalSociety = nationalSocieties[0],
                    Name            = "project 1",
                    State           = ProjectState.Open
                },
                new Project
                {
                    Id = _projectId2,
                    NationalSociety = nationalSocieties[0],
                    Name            = "project 2",
                    State           = ProjectState.Open
                },
                new Project
                {
                    Id = _projectId3,
                    NationalSociety = nationalSocieties[0],
                    Name            = "project 3",
                    State           = ProjectState.Closed
                },
                new Project
                {
                    Id = _projectId4,
                    NationalSociety = nationalSocieties[1],
                    Name            = "project 4",
                    State           = ProjectState.Open
                },
                new Project
                {
                    Id = _projectId5,
                    NationalSociety = nationalSocieties[1],
                    Name            = "project 5",
                    State           = ProjectState.Open
                }
            };

            var users = new List <User>
            {
                new AdministratorUser
                {
                    Id   = _administratorId,
                    Role = Role.Administrator
                },
                new SupervisorUser
                {
                    Id                    = _supervisorWithDataCollectorsId,
                    Role                  = Role.Supervisor,
                    EmailAddress          = "*****@*****.**",
                    Name                  = "*****@*****.**",
                    PhoneNumber           = "123",
                    AdditionalPhoneNumber = "321",
                    Sex                   = Sex.Male,
                    DecadeOfBirth         = 1990
                },
                new SupervisorUser
                {
                    Id                    = _supervisorWithoutDataCollectorsId,
                    Role                  = Role.Supervisor,
                    EmailAddress          = "*****@*****.**",
                    Name                  = "*****@*****.**",
                    PhoneNumber           = "123456",
                    AdditionalPhoneNumber = "321",
                    Sex                   = Sex.Male,
                    DecadeOfBirth         = 1990
                },
                new SupervisorUser
                {
                    Id                    = _supervisorWithDeletedDataCollectorsId,
                    Role                  = Role.Supervisor,
                    EmailAddress          = "*****@*****.**",
                    Name                  = "*****@*****.**",
                    PhoneNumber           = "123456",
                    AdditionalPhoneNumber = "321",
                    Sex                   = Sex.Male,
                    DecadeOfBirth         = 1990
                }
            };

            var supervisorWithDataCollectors        = (SupervisorUser)users[1];
            var supervisorWithoutDataCollectors     = (SupervisorUser)users[2];
            var supervisorWithDeletedDataCollectors = (SupervisorUser)users[3];
            var supervisorUserProjects = new List <SupervisorUserProject>
            {
                new SupervisorUserProject
                {
                    Project          = projects[0],
                    ProjectId        = _projectId1,
                    SupervisorUser   = supervisorWithDataCollectors,
                    SupervisorUserId = _supervisorWithDataCollectorsId
                },
                new SupervisorUserProject
                {
                    Project          = projects[2],
                    ProjectId        = _projectId3,
                    SupervisorUser   = supervisorWithDataCollectors,
                    SupervisorUserId = _supervisorWithDataCollectorsId
                },
                new SupervisorUserProject
                {
                    Project          = projects[1],
                    ProjectId        = _projectId3,
                    SupervisorUser   = supervisorWithoutDataCollectors,
                    SupervisorUserId = _supervisorWithoutDataCollectorsId
                },
                new SupervisorUserProject
                {
                    Project          = projects[0],
                    ProjectId        = _projectId1,
                    SupervisorUser   = supervisorWithDeletedDataCollectors,
                    SupervisorUserId = _supervisorWithDeletedDataCollectorsId
                }
            };

            supervisorWithDataCollectors.SupervisorUserProjects = new List <SupervisorUserProject>
            {
                supervisorUserProjects[0],
                supervisorUserProjects[1]
            };
            supervisorWithoutDataCollectors.SupervisorUserProjects = new List <SupervisorUserProject> {
                supervisorUserProjects[2]
            };
            supervisorWithDeletedDataCollectors.SupervisorUserProjects = new List <SupervisorUserProject> {
                supervisorUserProjects[3]
            };

            supervisorWithDataCollectors.CurrentProject        = supervisorWithDataCollectors.SupervisorUserProjects.Single(p => p.Project.State == ProjectState.Open).Project;
            supervisorWithoutDataCollectors.CurrentProject     = supervisorWithoutDataCollectors.SupervisorUserProjects.Single(p => p.Project.State == ProjectState.Open).Project;
            supervisorWithDeletedDataCollectors.CurrentProject = supervisorWithDeletedDataCollectors.SupervisorUserProjects.Single(p => p.Project.State == ProjectState.Open).Project;

            var userNationalSocieties = new List <UserNationalSociety>
            {
                new UserNationalSociety
                {
                    NationalSociety   = nationalSocieties[0],
                    NationalSocietyId = _nationalSocietyId1,
                    User   = supervisorWithDataCollectors,
                    UserId = _supervisorWithDataCollectorsId
                },
                new UserNationalSociety
                {
                    NationalSociety   = nationalSocieties[0],
                    NationalSocietyId = _nationalSocietyId1,
                    User   = supervisorWithoutDataCollectors,
                    UserId = _supervisorWithoutDataCollectorsId
                },
                new UserNationalSociety
                {
                    NationalSociety   = nationalSocieties[0],
                    NationalSocietyId = _nationalSocietyId1,
                    User   = supervisorWithDeletedDataCollectors,
                    UserId = _supervisorWithDeletedDataCollectorsId
                }
            };

            supervisorWithDataCollectors.UserNationalSocieties = new List <UserNationalSociety> {
                userNationalSocieties[0]
            };
            supervisorWithoutDataCollectors.UserNationalSocieties = new List <UserNationalSociety> {
                userNationalSocieties[1]
            };
            supervisorWithDeletedDataCollectors.UserNationalSocieties = new List <UserNationalSociety> {
                userNationalSocieties[2]
            };

            var dataCollectors = new List <DataCollector>
            {
                new DataCollector
                {
                    Id         = _dataCollectorId,
                    Supervisor = supervisorWithDataCollectors
                },
                new DataCollector
                {
                    Id         = _deletedDataCollectorId,
                    Supervisor = supervisorWithDeletedDataCollectors,
                    DeletedAt  = new DateTime(2020, 01, 01)
                }
            };


            var supervisorUserProjectsDbSet = supervisorUserProjects.AsQueryable().BuildMockDbSet();
            var nationalSocietiesDbSet      = nationalSocieties.AsQueryable().BuildMockDbSet();
            var projectsDbSet = projects.AsQueryable().BuildMockDbSet();
            var usersDbSet    = users.AsQueryable().BuildMockDbSet();
            var userNationalSocietiesDbSet = userNationalSocieties.AsQueryable().BuildMockDbSet();
            var dataCollectorsDbSet        = dataCollectors.AsQueryable().BuildMockDbSet();

            _nyssContext.NationalSocieties.Returns(nationalSocietiesDbSet);
            _nyssContext.Projects.Returns(projectsDbSet);
            _nyssContext.Users.Returns(usersDbSet);
            _nyssContext.SupervisorUserProjects.Returns(supervisorUserProjectsDbSet);
            _nyssContext.UserNationalSocieties.Returns(userNationalSocietiesDbSet);
            _nyssContext.DataCollectors.Returns(dataCollectorsDbSet);


            _nyssContext.NationalSocieties.FindAsync(1).Returns(nationalSocieties[0]);
            _nyssContext.NationalSocieties.FindAsync(2).Returns(nationalSocieties[1]);


            _nationalSocietyUserService.GetNationalSocietyUser <SupervisorUser>(Arg.Any <int>()).Returns(ci =>
            {
                var user = users.OfType <SupervisorUser>().FirstOrDefault(x => x.Id == (int)ci[0]);
                if (user == null)
                {
                    throw new ResultException(ResultKey.User.Registration.UserNotFound);
                }

                return(user);
            });
        }
예제 #29
0
 public DataConsumerService(IIdentityUserRegistrationService identityUserRegistrationService, INationalSocietyUserService nationalSocietyUserService, INyssContext dataContext,
                            ILoggerAdapter loggerAdapter, IVerificationEmailService verificationEmailService, IDeleteUserService deleteService)
 {
     _identityUserRegistrationService = identityUserRegistrationService;
     _dataContext                = dataContext;
     _loggerAdapter              = loggerAdapter;
     _verificationEmailService   = verificationEmailService;
     _deleteService              = deleteService;
     _nationalSocietyUserService = nationalSocietyUserService;
 }
예제 #30
0
 public BasicNationalSocietyServiceTestData(INyssContext nyssContext, EntityNumerator nationalSocietyNumerator)
 {
     _nationalSocietyNumerator = nationalSocietyNumerator;
     _testCaseDataProvider     = new TestCaseDataProvider(nyssContext);
 }