private static void Main(string[] args) { var options = new CommandLineOptions(); if (CommandLine.Parser.Default.ParseArgumentsStrict(args, options)) { if (!options.OutputPath.EndsWith(".cs")) { options.OutputPath = Path.Combine(options.OutputPath, options.ApiName + "Client.cs"); } using (var fs = new FileStream(options.OutputPath, FileMode.OpenOrCreate)) { var codeGenerator = new Codegenerator(); codeGenerator.Process( new CodegenSettings { ApiName = options.ApiName, ApiUrl = options.Url, Processor = new CSharpProcessor(), Namespace = options.Namespace }, fs ); } } }
public void Process_PetStore_ShouldBeApproved() { using (var stream = new MemoryStream()) { var codeGenerator = new Codegenerator(); codeGenerator.Process( new CodegenSettings { ApiName = "Petstore", ApiUrl = "http://petstore.swagger.wordnik.com/api/api-docs", Processor = new CSharpProcessor(), Namespace = "SomeNamespace" }, stream ); var result = Encoding.UTF8.GetString(stream.ToArray()); Approvals.Verify(result); } }
private static dynamic PostProcessorJob(ProcessorJobModel job) { var response = new Response(); var filename = (string.IsNullOrEmpty(job.Options.ApiName) ? "" : job.Options.ApiName) + "Client.cs"; response.Headers.Add("Content-Disposition", "attachment; filename=" + filename.ToValidFilename()); response.Headers.Add("x-filename", filename.ToValidFilename()); response.ContentType = "text/plain"; response.Contents = stream => { var codeGenerator = new Codegenerator(); codeGenerator.Process( new CodegenSettings { ApiUrl = job.Options.ApiUrl, ApiName = job.Options.ApiName, Processor = new CSharpProcessor() }, stream ); }; return response; }
private static dynamic PostProcessorJob(ProcessorJobModel job) { var response = new Response(); var filename = (string.IsNullOrEmpty(job.Options.ApiName) ? "" : job.Options.ApiName) + "Client.cs"; response.Headers.Add("Content-Disposition", "attachment; filename=" + filename.ToValidFilename()); response.Headers.Add("x-filename", filename.ToValidFilename()); response.ContentType = "text/plain"; response.Contents = stream => { var codeGenerator = new Codegenerator(); codeGenerator.Process( new CodegenSettings { ApiUrl = job.Options.ApiUrl, ApiName = job.Options.ApiName, Processor = new CSharpProcessor() }, stream ); }; return(response); }