protected static VerifySettings CreateVerifySettings( GeneratorTestInput yamlFile, ApiProjectOptions apiOptions) { ArgumentNullException.ThrowIfNull(yamlFile); var settings = new VerifySettings(); settings.UseDirectory(yamlFile.TestDirectory); settings.UseFileName(yamlFile.TestName); settings.UseExtension("cs"); settings.AddScrubber(input => input.Replace(apiOptions.ToolVersion.ToString(), "x.x.x.x")); return(settings); }
protected async Task VerifyGeneratedOutput( GeneratorTestInput input) { // Arrange var apiProject = await CreateApiProjectAsync(input); var verifySettings = CreateVerifySettings(input, apiProject); var sut = CreateGenerator(apiProject); // Act var generatedCode = GetGeneratedCode(sut); // Assert await VerifyGeneratedCode(generatedCode, verifySettings); }
protected static async Task <ApiProjectOptions> CreateApiProjectAsync( GeneratorTestInput testInput) { ArgumentNullException.ThrowIfNull(testInput); var spec = await testInput.LoadYamlSpecContentAsync(); var options = testInput.GeneratorOptions.Value; var document = GenerateApiDocument(spec); return(new ApiProjectOptions( new DirectoryInfo("resources"), projectTestGeneratePath: null, document, new FileInfo("resources/dummySpec.yaml"), ProjectPrefix, ProjectSuffix, options, usingCodingRules: false)); }
public Task ExecuteGeneratorTest( GeneratorTestInput input) => VerifyGeneratedOutput(input);