private IEnumerable <TestVariant> Build()
        {
            if (!Servers.Any())
            {
                throw new ArgumentException("No servers were specified.");
            }

            // TFMs.
            if (!Tfms.Any())
            {
                throw new ArgumentException("No TFMs were specified.");
            }

            ResolveDefaultArchitecture();

            if (!ApplicationTypes.Any())
            {
                ApplicationTypes.Add(ApplicationType.Portable);
            }

            if (!AncmVersions.Any())
            {
                AncmVersions.Add(AncmVersion.AspNetCoreModule);
            }

            if (!HostingModels.Any())
            {
                HostingModels.Add(HostingModel.OutOfProcess);
            }

            var variants = new List <TestVariant>();

            VaryByServer(variants);

            CheckForSkips(variants);

            return(variants);
        }
 public TestMatrix WithAllAncmVersions()
 {
     AncmVersions.Add(AncmVersion.AspNetCoreModule);
     AncmVersions.Add(AncmVersion.AspNetCoreModuleV2);
     return(this);
 }