예제 #1
0
        protected void SubmitIlr(Provider provider,
                                 string academicYear,
                                 DateTime date,
                                 ProcessService processService)
        {
            var submissionLearners = provider.Learners.Select(l =>
            {
                var learner = new Learner
                {
                    Name               = l.Name,
                    Uln                = l.Uln,
                    LearnRefNumber     = l.LearnRefNumber,
                    DateOfBirth        = l.DateOfBirth,
                    EmploymentStatuses = l.EmploymentStatuses
                };

                foreach (var ld in l.LearningDeliveries)
                {
                    learner.LearningDeliveries.Add(
                        new LearningDelivery
                    {
                        LearningDeliveryFams = ld.LearningDeliveryFams,
                        LearnerType          = ld.LearnerType,
                        StartDate            = ld.StartDate,
                        PlannedEndDate       = ld.PlannedEndDate,
                        ActualEndDate        = date >= ld.ActualEndDate
                                ? ld.ActualEndDate
                                : null,
                        CompletionStatus = ld.CompletionStatus,
                        StandardCode     = ld.StandardCode,
                        FrameworkCode    = ld.FrameworkCode,
                        PathwayCode      = ld.PathwayCode,
                        ProgrammeType    = ld.ProgrammeType,
                        PriceEpisodes    = ld.PriceEpisodes,
                        Type             = ld.Type
                    });
                }

                return(learner);
            }).ToArray();

            IlrSubmission submission = IlrBuilder.CreateAIlrSubmission()
                                       .WithUkprn(provider.Ukprn)
                                       .WithMultipleLearners()
                                       .WithLearners(submissionLearners);

            AcceptanceTestDataHelper.AddCurrentActivePeriod(date.Year, date.Month, EnvironmentVariables);

            var ilrStatusWatcher = new TestStatusWatcher(EnvironmentVariables, $"Submit ILR to {date:dd/MM/yy}");

            processService.RunIlrSubmission(submission, EnvironmentVariables, ilrStatusWatcher);

            var periodEarnings = EarningsDataHelper.GetPeriodisedValuesForUkprnSummary(provider.Ukprn, EnvironmentVariables).LastOrDefault() ?? new PeriodisedValuesEntity();

            PopulateEarnedByPeriodValues(academicYear, provider.EarnedByPeriod, periodEarnings);

            //populate by Uln values
            var periodEarningsByUln = EarningsDataHelper.GetPeriodisedValuesForUkprn(provider.Ukprn, EnvironmentVariables);

            PopulateEarnedByPeriodByUln(academicYear, provider.EarnedByPeriodByUln, periodEarningsByUln);


            var dataLockMatches = DataLockDataHelper.GetDataLockMatchesForUkprn(provider.Ukprn, EnvironmentVariables) ?? new DataLockMatch[0];

            provider.DataLockMatchesByPeriod.Add(date.GetPeriod(), dataLockMatches);
        }
 public void Warn(string message)
 {
     AcceptanceTestDataHelper.Log(SpecFlowHooks.RunId, ScenarioContext.Current?.ScenarioInfo?.Title, 3, DateTime.Now, message, null, _environmentVariables);
 }
 public void Error(Exception exception, string message)
 {
     AcceptanceTestDataHelper.Log(SpecFlowHooks.RunId, ScenarioContext.Current?.ScenarioInfo?.Title, 4, DateTime.Now, message, exception, _environmentVariables);
 }
        public static void ClearCollectionPeriodMapping()
        {
            var environmentVariables = EnvironmentVariablesFactory.GetEnvironmentVariables();

            AcceptanceTestDataHelper.ClearCollectionPeriodMapping(environmentVariables);
        }
        public static void ClearOldStuff()
        {
            var environmentVariables = EnvironmentVariablesFactory.GetEnvironmentVariables();

            AcceptanceTestDataHelper.ClearOldDedsIlrSubmissions(environmentVariables);
        }
        public static void PrepareTestRun()
        {
            RunId = IdentifierGenerator.GenerateIdentifier(12);

            AcceptanceTestDataHelper.CreateTestRun(RunId, DateTime.Now, Environment.MachineName, EnvironmentVariablesFactory.GetEnvironmentVariables());
        }
 public override void ExecutionCompleted(Exception error)
 {
     AcceptanceTestDataHelper.Log(SpecFlowHooks.RunId, ScenarioContext.Current?.ScenarioInfo?.Title, 1, DateTime.Now, $"Finished execeuting process {_processName}", error, _environmentVariables);
 }
 public override void TaskCompleted(string taskId, Exception error)
 {
     AcceptanceTestDataHelper.Log(SpecFlowHooks.RunId, ScenarioContext.Current?.ScenarioInfo?.Title, 1, DateTime.Now, $"Finished execeuting task {taskId}", error, _environmentVariables);
 }
 public override void TaskStarted(string taskId)
 {
     AcceptanceTestDataHelper.Log(SpecFlowHooks.RunId, ScenarioContext.Current?.ScenarioInfo?.Title, 1, DateTime.Now, $"Executing task {taskId}", null, _environmentVariables);
 }
        public override void ExecutionStarted(TaskDescriptor[] tasks)
        {
            var message = $"Starting execution of process {_processName} with tasks " + tasks.Select(t => t.Id).Aggregate((x, y) => $"{x}, {y}");

            AcceptanceTestDataHelper.Log(SpecFlowHooks.RunId, ScenarioContext.Current?.ScenarioInfo?.Title, 1, DateTime.Now, message, null, _environmentVariables);
        }