in BenchPress/Generators/TestGenerator.cs [16:50]
public string Generate(IEnumerable<TestDefinition> definitions, string templateFile)
{
var template = File.ReadAllText(templateFile);
var viewModels = new List<object>();
foreach (var definition in definitions)
{
object viewModel;
switch (definition.Type)
{
case TestType.ResourceExists:
viewModel = GenerateResourceExistsViewModel(definition, template);
break;
default:
throw new Exception($"Unknown test type: {definition.Type}");
}
viewModels.Add(viewModel);
}
var resourceTypes = new List<object>();
foreach (var resourceType in definitions.Select(d => d.Metadata.ResourceType).Distinct())
{
var library = LanguageProvider.Library(resourceType);
resourceTypes.Add(new { Library = library });
}
var stubble = new StubbleBuilder().Build();
var output = stubble.Render(
template,
new { TestCases = viewModels, ResourceTypes = resourceTypes }
);
return output;
}