public void GeneratorIndex(SqlEngineVersion version) { var db = new TestDatabaseIndex(); var documenterContext = DataDefinitionDocumenterTestsHelper.CreateTestGeneratorContext(version, new DocumenterTests.TableCustomizer()); var writer = CSharpTypedWriterFactory.GetCSharpTypedWriter(version, documenterContext, "TestDatabaseIndex"); var generator = new CSharpTypedGenerator(writer, version, "TestDatabaseIndex", "FizzCode.DbTools.DataDefinitionDocumenter.Tests"); generator.GenerateMultiFile(db); }
public void GeneratorForeignKeyComposite2Typed_SingleFile(SqlEngineVersion version) { var dd = new ForeignKeyCompositeSetForeignKeyTo(); var documenterContext = DataDefinitionDocumenterTestsHelper.CreateTestGeneratorContext(version, new DocumenterTests.TableCustomizer()); var writer = CSharpTypedWriterFactory.GetCSharpTypedWriter(version, documenterContext, "ForeignKeyCompositeSetForeignKeyTo"); var generator = new CSharpTypedGenerator(writer, version, "TestDatabaseFkNoCheckTest", "FizzCode.DbTools.DataDefinitionDocumenter.Tests"); generator.GenerateSingleFile(dd, $"GeneratorForeignKeyComposite2Typed_SingleFile_{version}.cs"); }
public void GeneratorForeignKeyComposite2(SqlEngineVersion version) { var db = new ForeignKeyCompositeSetForeignKeyTo(); var documenterContext = DataDefinitionDocumenterTestsHelper.CreateTestGeneratorContext(version, new DocumenterTests.TableCustomizer()); var writer = CSharpTypedWriterFactory.GetCSharpTypedWriter(version, documenterContext, "ForeignKeyCompositeSetForeignKeyTo"); var generator = new CSharpTypedGenerator(writer, version, "ForeignKeyCompositeSetForeignKeyTo", "FizzCode.DbTools.DataDefinitionDocumenter.Tests"); generator.GenerateMultiFile(db); }
public void GeneratorSqlTableCustomPropertyConstructor(SqlEngineVersion version) { var db = new SqlTableCustomPropertyConstructor(); var documenterContext = DataDefinitionDocumenterTestsHelper.CreateTestGeneratorContext(version, new DocumenterTests.TableCustomizer()); var writer = CSharpTypedWriterFactory.GetCSharpTypedWriter(version, documenterContext, "SqlTableCustomPropertyDbTyped"); var generator = new CSharpTypedGenerator(writer, version, "SqlTableCustomPropertyConstructor", "FizzCode.DbTools.DataDefinitionDocumenter.Tests"); generator.GenerateSingleFile(db, $"SqlTableCustomPropertyConstructor_{version}.cs"); }
public void FkNoCheckTest() { var version = MsSqlVersion.MsSql2016; var dd = new TestDatabaseFkNoCheckTest(); var documenterContext = DataDefinitionDocumenterTestsHelper.CreateTestGeneratorContext(version, new DocumenterTests.TableCustomizer()); var writer = CSharpTypedWriterFactory.GetCSharpTypedWriter(version, documenterContext, "TestDatabaseFkNoCheckTest"); var generator = new CSharpTypedGenerator(writer, version, "TestDatabaseFkNoCheckTest", "FizzCode.DbTools.DataDefinitionDocumenter.Tests"); generator.GenerateSingleFile(dd, $"TestDatabaseFkNoCheckTest_Typed_{version}.cs"); }
public void GenerateTyped( [Option(LongName = "connectionString", ShortName = "c", Description = "Provide a valid connection string to the database")] string connectionString, [Option(LongName = "singleOrMulti", ShortName = "m", Description = "multi for multi file, single for single file generation")] string singleOrMulti, [Option(LongName = "sqlType", ShortName = "t")] string sqlType, [Option(LongName = "namespace", ShortName = "n")] string @namespace, [Option(LongName = "newDatabaseName", ShortName = "b")] string newDatabaseName, [Option(LongName = "patternFileName", ShortName = "p")] string patternFileName, [Option(LongName = "flags", ShortName = "f")] List <string> flags) { var version = SqlEngineVersions.GetVersion(sqlType); var connString = new NamedConnectionString( version.GetType().Name, version.ProviderName, connectionString, version.VersionString); var context = CreateContext(version); var ddlReader = DataDefinitionReaderFactory.CreateDataDefinitionReader(connString, context, null); var dd = ddlReader.GetDatabaseDefinition(); var generatorContext = CreateGeneratorContext(context, patternFileName); if (flags != null) { SetSettingsFromFlags(flags, generatorContext.GeneratorSettings); } var writer = CSharpTypedWriterFactory.GetCSharpTypedWriter(version, generatorContext, newDatabaseName); var generator = new CSharpTypedGenerator(writer, version, newDatabaseName, @namespace); if (singleOrMulti == "s" || singleOrMulti == "single") { generator.GenerateSingleFile(dd, newDatabaseName + ".cs"); } else { generator.GenerateMultiFile(dd); } }