static async Task ConfigureTestExecution(IConfigureEndpointTestExecution configurer, EndpointConfiguration config, RunSettings settings, string endpointName, PublisherMetadata publisherMetadata) { await configurer.Configure(endpointName, config, settings, publisherMetadata).ConfigureAwait(false); ActiveTestExecutionConfigurer cleaners; var cleanerKey = "ConfigureTestExecution." + endpointName; if (!settings.TryGet(cleanerKey, out cleaners)) { cleaners = new ActiveTestExecutionConfigurer(); settings.Set(cleanerKey, cleaners); } cleaners.Add(configurer); }
public static async Task DefinePersistence(this EndpointConfiguration config, IConfigureEndpointTestExecution persistenceConfiguration, RunDescriptor runDescriptor, EndpointCustomizationConfiguration endpointCustomizationConfiguration) { await persistenceConfiguration.Configure(endpointCustomizationConfiguration.EndpointName, config, runDescriptor.Settings, endpointCustomizationConfiguration.PublisherMetadata); runDescriptor.OnTestCompleted(_ => persistenceConfiguration.Cleanup()); }