private static Dictionary <string, string> GetSiteExtensionArguments()
 {
     return(new Dictionary <string, string>
     {
         { "extensionFeed", AzureFixture.GetRequiredEnvironmentVariable("SiteExtensionFeed") },
         { "extensionName", "AspNetCoreTestBundle" },
         { "extensionVersion", GetAssemblyInformationalVersion() },
     });
 }
Esempio n. 2
0
        public static int Main(string[] args)
        {
            var loggerFactory = CreateLoggerFactory();
            var logger        = loggerFactory.CreateLogger(nameof(Program));

            var azure = new AzureFixture(loggerFactory);

            var cancellationTokenSource = new CancellationTokenSource();

            Console.CancelKeyPress += (sender, eventArgs) =>
            {
                eventArgs.Cancel = false;
                cancellationTokenSource.Cancel();
            };

            var failedTests = new List <string>();

            try
            {
                var testCases    = GenerateTestCases(azure, logger);
                var runningTests = new List <(string Name, Task Task)>();
                foreach (var testCase in testCases)
                {
                    logger.LogInformation("Starting {TestCase}", testCase.Name);
                    runningTests.Add((testCase.Name, testCase.Execute()));
                }
                foreach (var runningTest in runningTests)
                {
                    try
                    {
                        runningTest.Task.Wait(cancellationTokenSource.Token);
                    }
                    catch
                    {
                        failedTests.Add(runningTest.Name);
                    }
                }
            }
            catch (Exception ex)
            {
                logger.LogCritical(ex, "Error executing tests");
                return(1);
            }
            finally
            {
                azure.Dispose();
            }
            if (failedTests.Any())
            {
                logger.LogCritical("Tests failed: {Tests}", string.Join(",", failedTests));
            }
            return(failedTests.Count);
        }
Esempio n. 3
0
        private static IEnumerable <(string Name, Func <Task> Execute)> GenerateTestCases(AzureFixture azureFixture, ILogger logger)
        {
            var deployMethods = new[]
            {
                WebAppDeploymentKind.Git,
                WebAppDeploymentKind.WebDeploy
            };

            var legacyTemplates = new (string Version, string RuntimeVersion, string Name, string Output)[]
 public TemplateFunctionalTests(AzureFixture fixture, ILogger logger)
 {
     _fixture = fixture;
     _logger  = logger;
 }