public void ConnectTest() { var server = Utility.LoadServers("TestData/servers.yml")["pgsql"]; var sql = new PgSql(server, false); var res = sql.Connect(); Assert.True(res); }
public void Can_create_NpgsqlParameter() { Assert.That(PgSql.Param("p", 1).NpgsqlDbType, Is.EqualTo(NpgsqlDbType.Integer)); Assert.That(PgSql.Param("p", "s").NpgsqlDbType, Is.EqualTo(NpgsqlDbType.Text)); Assert.That(PgSql.Param("p", 'c').NpgsqlDbType, Is.EqualTo(NpgsqlDbType.Char)); Assert.That(PgSql.Param("p", new [] { 1 }).NpgsqlDbType, Is.EqualTo(NpgsqlDbType.Integer | NpgsqlDbType.Array)); }
public void Run() { if (!_commandLine.Check()) { OutPut?.Error(_commandLine.ErrorMessage); return; } foreach (var server in _commandLine.Servers) { IDb db = null; switch (server.Type) { case Define.DatabaseType.Mysql: db = new Db.MySql(server, _commandLine.DryRun); break; case Define.DatabaseType.Postgres: db = new PgSql(server, _commandLine.DryRun); break; case Define.DatabaseType.MsSql: db = new MsSql(server, _commandLine.DryRun); break; } switch (_commandLine.Command) { case Define.Command.Create: Create(db); break; case Define.Command.Diff: Diff(db); break; case Define.Command.Drop: Drop(db); break; case Define.Command.Extract: Extract(server.Name, db); break; case Define.Command.Query: Query(db); break; case Define.Command.Update: Update(db); break; case Define.Command.ReCreate: ReCreate(db); break; } } }
public void QueryTest() { var server = Utility.LoadServers("TestData/servers.yml")["pgsql"]; var db = Utility.LoadDataBase("TestData/pgsql.yml"); var sql = new PgSql(server, false); var res = sql.Connect(); var query = sql.Query(db); _output.WriteLine(query); Assert.False(string.IsNullOrWhiteSpace(query)); }
public void Does_PgSqlArray() { Assert.That(PgSql.Array((string[])null), Is.EqualTo("ARRAY[]")); Assert.That(PgSql.Array(new string[0]), Is.EqualTo("ARRAY[]")); Assert.That(PgSql.Array(new int[0]), Is.EqualTo("ARRAY[]")); Assert.That(PgSql.Array(1, 2, 3), Is.EqualTo("ARRAY[1,2,3]")); Assert.That(PgSql.Array("A", "B", "C"), Is.EqualTo("ARRAY['A','B','C']")); Assert.That(PgSql.Array("A'B", "C\"D"), Is.EqualTo("ARRAY['A''B','C\"D']")); Assert.That(PgSql.Array(new string[0], nullIfEmpty: true), Is.EqualTo("null")); Assert.That(PgSql.Array(new[] { "A", "B", "C" }, nullIfEmpty: true), Is.EqualTo("ARRAY['A','B','C']")); }
public void ReCreateTest() { var server = Utility.LoadServers("TestData/servers.yml")["pgsql"]; var db = Utility.LoadDataBase("TestData/pgsql.yml"); var sql = new PgSql(server, false); sql.Connect(); var result = sql.ReCreate(db, false); _output.WriteLine(result.Query); Assert.True(result.Success); }
public void DiffTest() { var server = Utility.LoadServers("TestData/servers.yml")["pgsql"]; var db = Utility.LoadDataBase("TestData/pgsql.yml"); var sql = new PgSql(server, false); var res = sql.Connect(); sql.ReCreate(db, false); Utility.TrimDataBaseProperties(db); var diff = sql.Diff(db); Assert.False(diff.HasDiff); }
public void ExtractTest() { var server = Utility.LoadServers("TestData/servers.yml")["pgsql"]; var db = Utility.LoadDataBase("TestData/pgsql.yml"); var sql = new PgSql(server, false); var res = sql.Connect(); sql.ReCreate(db, false); var extract = sql.Extract(); var yaml = Utility.DataBaseToYaml(extract); _output.WriteLine(yaml); Assert.NotEmpty(db.Tables); }