private string WriteTempFile(GenerateTestFileParameters opts, string content) { var fileName = Path.Combine(opts.OutputDirectory, Path.GetRandomFileName()); File.WriteAllText(fileName, content, Encoding.UTF8); return(fileName); }
private FeatureFileInput DeserializeFeatureFileInput(GenerateTestFileParameters opts) { string featureFileContent = File.ReadAllText(opts.FeatureFile); var featureFileInput = JsonConvert.DeserializeObject <FeatureFileInput>(featureFileContent); return(featureFileInput); }
public int GenerateTestFile(GenerateTestFileParameters opts) { try { var featureFileInput = DeserializeFeatureFileInput(opts); var projectSettings = DeserializeProjectSettings(opts.ProjectSettingsFile); var codeDomHelper = GetCodeDomHelper(projectSettings); var testGeneratorFactory = new TestGeneratorFactory(); var testGenerator = testGeneratorFactory.CreateGenerator(projectSettings); var testGeneratorResult = testGenerator.GenerateTestFile(featureFileInput, new GenerationSettings()); string outputFileContent; if (testGeneratorResult.Success) { outputFileContent = testGeneratorResult.GeneratedTestCode; } else { outputFileContent = GenerateError(testGeneratorResult, codeDomHelper); } Console.WriteLine(WriteTempFile(opts, outputFileContent)); return(0); } catch (Exception e) { Console.WriteLine(e); return(1); } }