public static async Task RunOnProviderSourceDatasetCleanup([QueueTrigger(ServiceBusConstants.TopicNames.ProviderSourceDatasetCleanup, Connection = "AzureConnectionString")] string item, ILogger logger) { Message message = Helpers.ConvertToMessage <Models.Results.SpecificationProviders>(item); using (IServiceScope scope = Functions.Results.Startup.RegisterComponents(new ServiceCollection()).CreateScope()) { try { OnProviderResultsSpecificationCleanup function = scope.ServiceProvider.GetService <OnProviderResultsSpecificationCleanup>(); await function.Run(message); } catch (Exception ex) { logger.LogError(ex, $"Error while executing Results {nameof(RunOnProviderSourceDatasetCleanup)}"); } } using (IServiceScope scope = Functions.TestEngine.Startup.RegisterComponents(new ServiceCollection()).CreateScope()) { try { OnTestSpecificationProviderResultsCleanup function = scope.ServiceProvider.GetService <OnTestSpecificationProviderResultsCleanup>(); await function.Run(message); } catch (Exception ex) { logger.LogError(ex, $"Error while executing TestEngine {nameof(RunOnProviderSourceDatasetCleanup)}"); } } logger.LogInformation($"C# Queue trigger function processed: {item}"); }
public async Task OnProviderResultsSpecificationCleanup_SmokeTestSucceeds() { OnProviderResultsSpecificationCleanup onProviderResultsSpecificationCleanup = new OnProviderResultsSpecificationCleanup(_logger, _resultsService, Services.BuildServiceProvider().GetRequiredService <IMessengerService>(), _userProfileProvider, IsDevelopment); SmokeResponse response = await RunSmokeTest(ServiceBusConstants.TopicSubscribers.CleanupCalculationResultsForSpecificationProviders, async(Message smokeResponse) => await onProviderResultsSpecificationCleanup.Run(smokeResponse), ServiceBusConstants.TopicNames.ProviderSourceDatasetCleanup); response .Should() .NotBeNull(); }