public static byte[] GenerateUnitTestCode(string fileNameSpace, string inputFileName, string fileExtension = "CSharp", string testFramework = "MSTest") { var database = GetDatabase(fileNameSpace, inputFileName); var factory = new UnitTestCodeGeneratorFactory(database); var codeGenerator = factory.Create(testFramework); return(GetData(codeGenerator)); }
public void UnitTestCodeGeneratorFactoryStaticCreateNUnitTest() { var defaultNamespace = typeof(CodeGenTest).Namespace; const string connectionString = "Data Source=Northwind.sdf"; var database = SqlCeDatabaseFactory.Create(defaultNamespace, connectionString); var codeGenerator = UnitTestCodeGeneratorFactory.Create(database, "NUnit"); Assert.IsNotNull(codeGenerator); Assert.IsInstanceOfType(codeGenerator, typeof(CodeGenerator)); Assert.IsInstanceOfType(codeGenerator, typeof(CSharpCodeGenerator)); Assert.IsInstanceOfType(codeGenerator, typeof(CSharpUnitTestCodeGenerator)); Assert.IsInstanceOfType(codeGenerator, typeof(NUnitTestCodeGenerator)); }
public void UnitTestCodeGeneratorFactoryStaticCreateMSTestTest() { var defaultNamespace = typeof(CodeGenTest).Namespace; var connectionString = "Data Source=TestDatabase.sdf"; var database = new SqlCeDatabase(defaultNamespace, connectionString); var codeGenerator = UnitTestCodeGeneratorFactory.Create(database, "MSTest"); Assert.IsNotNull(codeGenerator); Assert.IsInstanceOfType(codeGenerator, typeof(CodeGenerator)); Assert.IsInstanceOfType(codeGenerator, typeof(CSharpCodeGenerator)); Assert.IsInstanceOfType(codeGenerator, typeof(CSharpUnitTestCodeGenerator)); Assert.IsInstanceOfType(codeGenerator, typeof(MsTestUnitTestCodeGenerator)); }
public override void Generate(string wszInputFilePath, string bstrInputFileContents, string wszDefaultNamespace, out IntPtr rgbOutputFileContents, out int pcbOutput, IVsGeneratorProgress pGenerateProgress) { try { var database = CodeGeneratorCustomTool.GetDatabase(wszDefaultNamespace, wszInputFilePath); var factory = new UnitTestCodeGeneratorFactory(database); var codeGenerator = factory.Create("xUnit"); codeGenerator.GenerateEntities(); codeGenerator.GenerateDataAccessLayer(); var header = new StringBuilder(); codeGenerator.WriteHeaderInformation(header); var files = new Dictionary <string, StringBuilder>(codeGenerator.CodeFiles.Count); foreach (var codeFile in codeGenerator.CodeFiles) { files.Add(codeFile.Key + GetDefaultExtension(), codeFile.Value); } AddOutputToProject(wszInputFilePath, files, header); base.Generate(wszInputFilePath, bstrInputFileContents, wszDefaultNamespace, out rgbOutputFileContents, out pcbOutput, pGenerateProgress); } catch (Exception) { var codeGen = new SQLCEXUnitCodeGenerator(); codeGen.Generate(wszInputFilePath, bstrInputFileContents, wszDefaultNamespace, out rgbOutputFileContents, out pcbOutput, pGenerateProgress); //var applicationException = new ApplicationException("Unable to generate code", e); //var messageBox = new ExceptionMessageBox(applicationException); //messageBox.Show(null); //throw; } }