public void WhenNoFunctionsExistReturnsOnlyAuditOperationColumn() { var dialect = new Dialects.DummyExtendedDialect(); dialect.Functions.Clear(); var auditColumns = GetAuditColumnSource().GetAuditColumns( new Table("AuditTable"), dialect); Assert.AreEqual(1, auditColumns.Count()); }
public void WhenCurrentTimestampFunctionExistsReturnsAuditTimestampColumn() { var dialect = new Dialects.DummyExtendedDialect(); dialect.Functions.Clear(); dialect.Functions.Add( AuditColumnSource.CurrentTimestampFunctionName, new NoArgSQLFunction("getdate", NHibernateUtil.DateTime)); var auditColumns = GetAuditColumnSource().GetAuditColumns( new Table("AuditTable"), dialect); Assert.AreEqual(2, auditColumns.Count()); }
public void WhenCurrentUserFunctionExistsReturnsAuditUserColumn() { var dialect = new Dialects.DummyExtendedDialect(); dialect.Functions.Clear(); dialect.Functions.Add( AuditColumnSource.CurrentUserFunctionName, new NoArgSQLFunction("system_user", NHibernateUtil.AnsiString)); var auditColumns = GetAuditColumnSource().GetAuditColumns( new Table("AuditTable"), dialect); Assert.AreEqual(2, auditColumns.Count()); }
public void AuditOperationColumnUniquelyIdentifiesOperation() { var dialect = new Dialects.DummyExtendedDialect(); dialect.Functions.Clear(); var auditColumns = GetAuditColumnSource().GetAuditColumns( new Table("AuditTable"), dialect); var auditOperation = auditColumns.Single(); var operations = new TriggerActions[] { TriggerActions.INSERT, TriggerActions.UPDATE, TriggerActions.DELETE }; var outputs = from op in operations select auditOperation.ValueFunction(op); Assert.AreEqual(outputs.Count(), outputs.Distinct().Count()); }