public static DropDatabase CreateDropDatabase(IDatabaseContainer databaseContainer, string databaseName) { DropDatabase dropDatabase = new DropDatabase(databaseContainer); dropDatabase.targetDatabase = databaseName; return(dropDatabase); }
public void RevokePrivilege_AllOK_RevokePrivilege() { //Prefase IDatabaseContainer databaseContainer = ObjectConstructor.CreateDatabaseContainer(); IDatabase database = databaseContainer.GetDatabase(SystemeConstants.DefaultDatabaseName); Table table = new Table("table"); database.AddTable(table); string profileName = SystemeConstants.DefaultProfile; string privilegeName = SystemeConstants.InsertPrivilegeName; GrantPrivilege grantPrivilege = TestGrantPrivilege.CreateGrantPrivilege(databaseContainer, SystemeConstants.SystemDatabaseName, SystemeConstants.PrivilegesOfProfilesOnTablesTableName); grantPrivilege.SetData(privilegeName, profileName, database.databaseName, table.tableName); grantPrivilege.ValidateParameters(); grantPrivilege.Execute(); ITable profilesPrivilegesTable = databaseContainer.GetDatabase(SystemeConstants.SystemDatabaseName).GetTable(SystemeConstants.PrivilegesOfProfilesOnTablesTableName); int rowCounts = profilesPrivilegesTable.GetRowCount(); //Test RevoquePrivilege revoquePrivilege = CreateRevokePrivilege(databaseContainer, SystemeConstants.SystemDatabaseName, SystemeConstants.PrivilegesOfProfilesOnTablesTableName); revoquePrivilege.SetData(profileName, database.databaseName, table.tableName, privilegeName); Assert.IsTrue(revoquePrivilege.ValidateParameters()); revoquePrivilege.Execute(); Assert.AreEqual(rowCounts - 1, profilesPrivilegesTable.GetRowCount()); }
public void UpdateFKColumn_BadArguments_ConcretelyFKViolated_NotifyInValidate() { // C phase IDatabaseContainer databaseContainer = ObjectConstructor.CreateDatabaseContainer(); Database database = new Database("database"); Table table1 = new Table("t1"); Column c1table1 = new Column("column1", DataTypesFactory.GetDataTypesFactory().GetDataType(TypesKeyConstants.StringTypeKey)); table1.AddColumn(c1table1); table1.primaryKey.AddKey(c1table1); Table table2 = new Table("t2"); Column c1table2 = new Column("column1", DataTypesFactory.GetDataTypesFactory().GetDataType(TypesKeyConstants.StringTypeKey)); table2.AddColumn(c1table2); table2.primaryKey.AddKey(c1table2); table2.foreignKey.AddForeignKey(c1table2, c1table1); Row r1 = table1.CreateRowDefinition(); r1.GetCell(c1table1.columnName).data = "asda"; table1.AddRow(r1); Row r2 = table2.CreateRowDefinition(); r2.GetCell(c1table2.columnName).data = r1.GetCell(c1table1.columnName).data; table2.AddRow(r2); database.AddTable(table1); database.AddTable(table2); databaseContainer.AddDatabase(database); // T phase Update update = CreateUpdate(databaseContainer, database.databaseName, table2.tableName); update.AddValue(c1table2.columnName, r2.GetCell(c1table2.columnName).data + "aaa"); Assert.IsFalse(update.ValidateParameters()); }
private Drop CreateDropTableQuery(IMessage request, IDatabaseContainer container) { Drop drop = new Drop(container); this.SetDatabaseAndTableTarget(request, drop); return(drop); }
public void Select_BadArgument_DatabaseDoesntExit_NoticedInValidateParameters() { IDatabaseContainer databaseContainer = ObjectConstructor.CreateDatabaseContainer(); Database database = new Database("aa"); ITable table = new Table("table1"); string columnName = "c1"; Column column = new Column(columnName, DataTypesFactory.GetDataTypesFactory().GetDataType(TypesKeyConstants.IntTypeKey)); table.AddColumn(column); Row row = table.CreateRowDefinition(); row.GetCell(columnName).data = "1"; table.AddRow(row); database.AddTable(table); databaseContainer.AddDatabase(database); string notValidDatabaseName = "bb"; Assert.IsFalse(databaseContainer.ExistDatabase(notValidDatabaseName)); Select select = CreateSelect(databaseContainer, notValidDatabaseName, table.tableName, true); Assert.IsFalse(select.ValidateParameters()); select.Execute(); Assert.AreEqual(0, select.GetAfectedRowCount()); Console.WriteLine(select.GetResult()); }
private DropDatabase DropDatabaseQuery(IMessage request, IDatabaseContainer container) { DropDatabase dropDatabase = new DropDatabase(container); dropDatabase.targetDatabase = request.GetElementsContentByTagName(RequestAndRegexConstants.databaseTagName)[0]; return(dropDatabase); }
public static CreateDatabase CreateCreateDatabase(IDatabaseContainer databaseContainer, string databaseName) { CreateDatabase createDatabase = new CreateDatabase(databaseContainer); createDatabase.targetDatabase = databaseName; return(createDatabase); }
public void InsertInTableWithPK_GoodArgument_TheQueryInsertsTheNewRows() { //Construct IDatabaseContainer databaseContainer = ObjectConstructor.CreateDatabaseContainer(); Database database = new Database("database"); ITable table = new Table("table1"); Column column = new Column("c1t1", DataTypesFactory.GetDataTypesFactory().GetDataType(TypesKeyConstants.StringTypeKey)); table.AddColumn(column); table.primaryKey.AddKey(column); database.AddTable(table); databaseContainer.AddDatabase(database); //Test bool b = true; int limit = 100; Insert insert; for (int i = 0; i < limit && b; i++) { insert = CreateInsert(databaseContainer, database.databaseName, table.tableName); insert.AddValue(i + ""); b = insert.ValidateParameters(); insert.Execute(); } Assert.IsTrue(b); Assert.AreEqual(limit, table.GetRowCount()); }
public void InsertInTableWithFK_BadArguments_FKViolated_NoticeInValidate() { //Construct IDatabaseContainer databaseContainer = ObjectConstructor.CreateDatabaseContainer(); Database database = new Database("database"); ITable table1 = new Table("table1"); Column columnt1 = new Column("c1t1", DataTypesFactory.GetDataTypesFactory().GetDataType(TypesKeyConstants.StringTypeKey)); table1.AddColumn(columnt1); table1.primaryKey.AddKey(columnt1); database.AddTable(table1); ITable table2 = new Table("table2"); Column column1t2 = new Column("c1t2", DataTypesFactory.GetDataTypesFactory().GetDataType(TypesKeyConstants.StringTypeKey)); Column column2t2 = new Column("c2t2", DataTypesFactory.GetDataTypesFactory().GetDataType(TypesKeyConstants.StringTypeKey)); table2.AddColumn(column1t2); table2.AddColumn(column2t2); table2.primaryKey.AddKey(column1t2); table2.foreignKey.AddForeignKey(column2t2, columnt1); database.AddTable(table2); databaseContainer.AddDatabase(database); //Add some data Row row = table1.CreateRowDefinition(); row.GetCell(columnt1.columnName).data = "aa"; table1.AddRow(row); //Test Insert insert = CreateInsert(databaseContainer, database.databaseName, table2.tableName); insert.AddValue(row.GetCell(columnt1.columnName).data + "a"); //it is not the fk column insert.AddValue(row.GetCell(columnt1.columnName).data + "a"); //it is the fk column Assert.IsFalse(insert.ValidateParameters()); }
private CreateDatabase CreateDatabaseQuery(IMessage request, IDatabaseContainer container) { CreateDatabase createDatabase = new CreateDatabase(container); createDatabase.targetDatabase = request.GetElementsContentByTagName(RequestAndRegexConstants.databaseTagName)[0]; return(createDatabase); }
public override bool ValidateParameters() { IDatabaseContainer container = this.GetContainer(); if (!container.ExistDatabase(this.targetDatabase)) { this.SaveTheError(QuerysStringResultConstants.DatabaseDoesntExist(this.targetDatabase)); } else { IDatabase targetDatabaseObject = container.GetDatabase(this.targetDatabase); if (!targetDatabaseObject.ExistTable(this.targetTableName)) { this.SaveTheError(QuerysStringResultConstants.TableDoensExist(this.targetDatabase, this.targetTableName)); } else if (!this.GetPrivilegeModule().CheckProfileTablePrivileges(this.username, this.targetDatabase, this.targetTableName, this.GetNeededExecutePrivilege())) { this.SaveTheError("Not enought privileges"); } else { this.DoTheOtherValidations(targetDatabaseObject.GetTable(this.targetTableName)); } } return(this.GetIsValidQuery()); }
public void UpdatePKColumn_ThisIsIlegal_NoticeInValidate() { // C phase IDatabaseContainer databaseContainer = ObjectConstructor.CreateDatabaseContainer(); Database database = new Database("database"); Table table1 = new Table("t1"); Column c1 = new Column("column1", DataTypesFactory.GetDataTypesFactory().GetDataType(TypesKeyConstants.StringTypeKey)); table1.AddColumn(c1); table1.primaryKey.AddKey(c1); Row row = table1.CreateRowDefinition(); row.GetCell(c1.columnName).data = "data"; table1.AddRow(row); Row row2 = table1.CreateRowDefinition(); row.GetCell(c1.columnName).data = row.GetCell(c1.columnName).data + "a"; table1.AddRow(row2); database.AddTable(table1); databaseContainer.AddDatabase(database); // T phase Update update = CreateUpdate(databaseContainer, database.databaseName, table1.tableName); update.AddValue(c1.columnName, row2.GetCell(c1.columnName).data); update.whereClause.AddCritery(c1.columnName, row.GetCell(c1.columnName).data, OperatorFactory.GetOperatorFactory().GetOperator(OperatorKeys.EqualKey)); Assert.IsFalse(update.ValidateParameters()); }
public void GoodArguments_ShouldntFindResults() { bool parametros, tablaBorrada = false; Database db = ObjectConstructor.CreateDatabaseFull("db1"); List <Column> columnas = new List <Column>(); List <List <string> > celdas = new List <List <string> >(); Table t = ObjectConstructor.CreateFullTable("table1", columnas, celdas); db.AddTable(t); IDatabaseContainer container = ObjectConstructor.CreateDatabaseContainer(); container.AddDatabase(db); Drop drop = CreateDrop(container, db.databaseName, t.tableName); parametros = drop.ValidateParameters(); if (parametros) { drop.Execute(); if (db.ExistTable(t.tableName) == false) { tablaBorrada = false; } } Assert.AreEqual(parametros, true); Assert.AreEqual(tablaBorrada, false); }
private Delete CreateDeleteQuery(IMessage request, IDatabaseContainer container) { Delete delete = new Delete(container); this.SetDatabaseAndTableTarget(request, delete); delete.whereClause = this.CreateWhereClause(request); return(delete); }
public static DropSecurityProfile CreateDropSecurityProfile(IDatabaseContainer container, string databaseName, string tableName) { DropSecurityProfile dropSecurityProfile = new DropSecurityProfile(container); dropSecurityProfile.targetDatabase = databaseName; dropSecurityProfile.targetTableName = tableName; return(dropSecurityProfile); }
public void DropSecurityProfile_TheProfileCannotDrop_NoticeInValidate() { IDatabaseContainer databaseContainer = ObjectConstructor.CreateDatabaseContainer(); DropSecurityProfile dropSecurityProfile = CreateDropSecurityProfile(databaseContainer, SystemeConstants.SystemDatabaseName, SystemeConstants.ProfilesTableName); dropSecurityProfile.SetTargetSecurityProfile(SystemeConstants.DefaultProfile); Assert.IsFalse(dropSecurityProfile.ValidateParameters()); }
public Update CreateUpdate(IDatabaseContainer databaseContainer, string databaseName, string tableName) { Update update = new Update(databaseContainer); update.targetDatabase = databaseName; update.targetTableName = tableName; return(update); }
//Lo he puesto en mayusculas la primera letra (para cumplir con las reglas del proyecto, aunque tampoco pasaria nada si se nos cuela alguna minuscula, supongo) public static Drop CreateDrop(IDatabaseContainer container, string databaseName, string tableName) { Drop drop = new Drop(container); drop.targetDatabase = databaseName; drop.targetTableName = tableName; return(drop); }
public static DeleteUser CreateDeleteUser(IDatabaseContainer container) { DeleteUser deleteUser = new DeleteUser(container); deleteUser.targetDatabase = SystemeConstants.SystemDatabaseName; deleteUser.targetTableName = SystemeConstants.UsersTableName; return(deleteUser); }
public static CreateSecurityProfile CreateCreateSecurityProfile(IDatabaseContainer container) { CreateSecurityProfile createSecurityProfile = new CreateSecurityProfile(container); createSecurityProfile.targetDatabase = SystemeConstants.SystemDatabaseName; createSecurityProfile.targetTableName = SystemeConstants.ProfilesTableName; return(createSecurityProfile); }
public static Insert CreateInsert(IDatabaseContainer databaseContainer, string databaseName, string tableName) { Insert insert = new Insert(databaseContainer); insert.targetDatabase = databaseName; insert.targetTableName = tableName; return(insert); }
public static Create CreateCreate(IDatabaseContainer dataContainer, string databaseName, string tableName) { Create create = new Create(dataContainer); create.targetDatabase = databaseName; create.targetTableName = tableName; return(create); }
public static GrantDatabasePrivilege CreateGrantDatabasePrivilege(IDatabaseContainer databaseContainer, string databaseName, string tableName) { GrantDatabasePrivilege grantDatabasePrivilege = new GrantDatabasePrivilege(databaseContainer); grantDatabasePrivilege.targetDatabase = databaseName; grantDatabasePrivilege.targetTableName = tableName; return(grantDatabasePrivilege); }
public static Delete CreateDelete(IDatabaseContainer container, string databaseName, string tableName) { Delete delete = new Delete(container); delete.targetDatabase = databaseName; delete.targetTableName = tableName; return(delete); }
public static Login CreateLogin(IDatabaseContainer container, IUserThread thread, string databaseName, string tableName) { Login login = new Login(container, thread); login.targetDatabase = databaseName; login.targetTableName = tableName; return(login); }
public static RevokeDatabasePrivilege CreateRevoqueDatabasePrivilege(IDatabaseContainer container, string databaseName, string tableName) { RevokeDatabasePrivilege revoqueDatabasePrivilege = new RevokeDatabasePrivilege(container); revoqueDatabasePrivilege.targetDatabase = databaseName; revoqueDatabasePrivilege.targetTableName = tableName; return(revoqueDatabasePrivilege); }
private DeleteUser CreateDeleteUserQuery(IMessage request, IDatabaseContainer container) { DeleteUser deleteUser = new DeleteUser(container); deleteUser.targetDatabase = SystemeConstants.SystemDatabaseName; deleteUser.targetTableName = SystemeConstants.UsersTableName; deleteUser.SetTargetUserName(request.GetElementsContentByTagName(RequestAndRegexConstants.usernameTagName)[0]); return(deleteUser); }
private Login CreateLogin(IMessage request, IDatabaseContainer container, IUserThread thread) { Login login = new Login(container, thread); login.targetDatabase = SystemeConstants.SystemDatabaseName; login.targetTableName = SystemeConstants.UsersTableName; login.SetData(request.GetElementsContentByTagName(RequestAndRegexConstants.usernameTagName)[0], request.GetElementsContentByTagName(RequestAndRegexConstants.passwordTagName)[0]); return(login); }
private RevoquePrivilege CreateRevoquePrivilege(IMessage request, IDatabaseContainer container) { RevoquePrivilege revokePrivilege = new RevoquePrivilege(container); revokePrivilege.targetDatabase = SystemeConstants.SystemDatabaseName; revokePrivilege.targetTableName = SystemeConstants.PrivilegesOfProfilesOnTablesTableName; revokePrivilege.SetData(request.GetElementsContentByTagName(RequestAndRegexConstants.securityProfileTag)[0], this.GetTargetDatabase(request), request.GetElementsContentByTagName(RequestAndRegexConstants.tableTagName)[0], request.GetElementsContentByTagName(RequestAndRegexConstants.privilegeTag)[0]); return(revokePrivilege); }
private DropSecurityProfile CreateDropSecurityProfile(IMessage request, IDatabaseContainer container) { DropSecurityProfile dropSecurityProfile = new DropSecurityProfile(container); dropSecurityProfile.targetDatabase = SystemeConstants.SystemDatabaseName; dropSecurityProfile.targetTableName = SystemeConstants.ProfilesTableName; dropSecurityProfile.SetTargetSecurityProfile(request.GetElementsContentByTagName(RequestAndRegexConstants.valueTagName)[0]); return(dropSecurityProfile); }