public async Task DeleteTestResults_Deletes_Dependencies_Using_Correct_SpecificationId_And_DeletionType(string specificationId, DeletionType deletionType)
        {
            string jobId = "job-id";

            Message message = new Message
            {
                UserProperties =
                {
                    new KeyValuePair <string, object>("jobId",            jobId),
                    new KeyValuePair <string, object>("specification-id", specificationId),
                    new KeyValuePair <string, object>("deletion-type",    (int)deletionType)
                }
            };
            IScenariosRepository testsRepository = Substitute.For <IScenariosRepository>();
            var scenariosResiliencePolicies      = Substitute.For <IScenariosResiliencePolicies>();

            scenariosResiliencePolicies.JobsApiClient           = Policy.NoOpAsync();
            scenariosResiliencePolicies.CalcsRepository         = Policy.NoOpAsync();
            scenariosResiliencePolicies.ScenariosRepository     = Policy.NoOpAsync();
            scenariosResiliencePolicies.SpecificationsApiClient = Policy.NoOpAsync();
            ScenariosService service = new ScenariosService(
                Substitute.For <ILogger>(),
                testsRepository,
                Substitute.For <ISpecificationsApiClient>(),
                Substitute.For <IValidator <CreateNewTestScenarioVersion> >(),
                Substitute.For <ISearchRepository <ScenarioIndex> >(),
                Substitute.For <ICacheProvider>(),
                Substitute.For <IVersionRepository <TestScenarioVersion> >(),
                Substitute.For <IJobManagement>(),
                Substitute.For <ICalcsRepository>(),
                scenariosResiliencePolicies
                );

            await service.DeleteTests(message);

            await testsRepository.Received(1).DeleteTestsBySpecificationId(specificationId, deletionType);
        }
예제 #2
0
 public ScenariosController(ScenariosService service)
 {
     _scenariosService = service;
 }