Exemplo n.º 1
0
        public void Generate_GrantTablePermissionOperation_produce_valid_statement()
        {
            var operation    = new GrantTablePermissionOperation("dbo.table", "user", TablePermission.Update);
            var sqlGenerator = new ExtendedSqlServerMigrationSqlGenerator();

            var sql = sqlGenerator.Generate(new MigrationOperation[] { operation }, "2008").Join(ss => ss.Sql, Environment.NewLine);

            Assert.Contains("GRANT UPDATE ON dbo.table TO user", sql);
        }
Exemplo n.º 2
0
        public void Generate_redirect_to_specific_method()
        {
            var sqlGenerator = new AdvancedSqlServerMigrationSqlGeneratorForTests();

            var grantTablePermissionOperation =
                new GrantTablePermissionOperation("table", "user", TablePermission.Alter);

            sqlGenerator.Generate(
                new MigrationOperation[] { grantTablePermissionOperation }, "2008");

            Assert.True(sqlGenerator.GrantTablePermissionOpeartionCalled);
        }
        /// <summary>
        /// Generate a SQL to grant permission on a table for specified user
        /// </summary>
        /// <param name="grantTablePermissionOperation">The operation to produce sql for.</param>
        public virtual void Generate(GrantTablePermissionOperation grantTablePermissionOperation)
        {
            using (var writer = Writer())
            {
                writer.WriteLine(
                    "GRANT {0} ON {1} TO {2}",
                    grantTablePermissionOperation.Permission.ToString().ToUpper(),
                    grantTablePermissionOperation.Table,
                    grantTablePermissionOperation.User);

                this.Statement(writer);
            }
        }
Exemplo n.º 4
0
 public override void Generate(GrantTablePermissionOperation grantTablePermissionOperation)
 {
     GrantTablePermissionOpeartionCalled = true;
 }