Ejemplo n.º 1
0
        public void SetupDbMigrationTest()
        {
            DbAccessFacadeMock dbAccessFacade = new DbAccessFacadeMock();

            IDatabaseMigrator migrator = DatabaseMigratorBuilder.Build(config, dbAccessFacade);

            migrator.Migrate(new SqlConnection());

            Assert.True(dbAccessFacade.AppliedItems.Count == 5);
        }
Ejemplo n.º 2
0
        public void ParametersAndFiltersTest()
        {
            DbAccessFacadeMock dbAccessFacade = new DbAccessFacadeMock();

            config.AddScriptsLocation(Assembly.GetExecutingAssembly(), "TemplateTestScripts");

            IDatabaseMigrator migrator = DatabaseMigratorBuilder.Build(config, dbAccessFacade);

            migrator.Migrate(new SqlConnection());

            PendingItem script = dbAccessFacade.ClasspathScripts.First(s => s.Version.Equals("201701171635"));

            Assert.NotNull(script);

            Assert.True(script.Content.ToString().Contains("0x"));
        }
Ejemplo n.º 3
0
        public void ParametersTest()
        {
            DbAccessFacadeMock dbAccessFacade = new DbAccessFacadeMock();

            config.AddParameter("parameters_test_key_1", "col1");
            config.AddParameter("parameters_test_key_2", "col2");

            IDatabaseMigrator migrator = DatabaseMigratorBuilder.Build(config, dbAccessFacade);

            migrator.Migrate(new SqlConnection());

            PendingItem script = dbAccessFacade.ClasspathScripts.First(s => s.Version.Equals("201606201610"));

            Assert.NotNull(script);

            Assert.True(script.Content.ToString().Contains("[col1]"));
            Assert.True(script.Content.ToString().Contains("[col2]"));
            Assert.False(script.Content.ToString().Contains("{{parameters_test_key_1}}"));
            Assert.False(script.Content.ToString().Contains("{{parameters_test_key_2}}"));
        }
Ejemplo n.º 4
0
        public void UpdateSchemaTest()
        {
            DbAccessFacadeMock dbAccessFacade = new DbAccessFacadeMock();

            dbAccessFacade.DbItems.Add(new AppliedItem
            {
                Id       = "201606201607",
                Type     = ItemType.Versioned,
                Version  = "201606201607",
                Name     = "V2016.06.20_1607_test1.sql",
                Executed = DateTime.Now,
                Checksum = "2e542df38430899677f99ce8be5b97a6"
            });

            IDatabaseMigrator migrator = DatabaseMigratorBuilder.Build(config, dbAccessFacade);

            migrator.Migrate(new SqlConnection());

            Assert.True(dbAccessFacade.DbItems.Count == 5);
            Assert.True(dbAccessFacade.AppliedItems.Count == 4);
        }
        public void RepeatableScriptsNoReapplyTest()
        {
            DbAccessFacadeMock dbAccessFacade = new DbAccessFacadeMock();

            dbAccessFacade.DbItems.Add(new AppliedItem
            {
                Id       = "201606201701",
                Type     = ItemType.Repeatable,
                Version  = "201606201701",
                Name     = "R2016.06.20_1701_repeatable_test2.sql",
                Executed = DateTime.Now,
                Checksum = "470f6a50c4fd0323b2dc95be00ab72e1"
            });

            IDatabaseMigrator migrator = DatabaseMigratorBuilder.Build(config, dbAccessFacade);

            migrator.Migrate(new SqlConnection());

            Assert.True(dbAccessFacade.DbItems.Count == 1);
            Assert.True(dbAccessFacade.AppliedItems.Count == 0);
        }
        public void RepeatableScriptsReapplyTest()
        {
            DbAccessFacadeMock dbAccessFacade = new DbAccessFacadeMock();

            dbAccessFacade.DbItems.Add(new AppliedItem
            {
                Id       = "201606201701",
                Type     = ItemType.Repeatable,
                Version  = "201606201701",
                Name     = "R2016.06.20_1701_repeatable_test2.sql",
                Executed = DateTime.Now,
                Checksum = "2e542df38430899677f99ce8be5b97a7"
            });

            IDatabaseMigrator migrator = DatabaseMigratorBuilder.Build(config, dbAccessFacade);

            migrator.Migrate(new SqlConnection());

            Assert.True(dbAccessFacade.DbItems.Count == 1);
            Assert.True(dbAccessFacade.AppliedItems.Count == 1);
        }