static DbParameter MakeParameter(SqlServerEnvironment environment, string sourceColumn, string parameterName) { var parameterA = environment.DbProviderFactory.CreateParameter(); parameterA.SourceColumn = sourceColumn; parameterA.ParameterName = parameterName; return(parameterA); }
[Test] public void BuildsInsertCommand() { var environment = new SqlServerEnvironment(); var parameterA = MakeParameter(environment, "aColumn", "aParameter"); var parameterB = MakeParameter(environment, "bColumn", "bParameter"); var command = environment.BuildInsertCommand( "aTable", new[] { new DbParameterAccessor(parameterA, typeof(string), 0, "varchar"), new DbParameterAccessor(parameterB, typeof(int), 1, "integer") }); Assert.AreEqual("insert into aTable([aColumn],[bColumn]) values (@aParameter,@bParameter)", command); }
[Test] public void BuildUpdateCommand() { var environment = new SqlServerEnvironment(); var parameterA = MakeParameter(environment, "aColumn", "aParameter"); var parameterB = MakeParameter(environment, "bColumn", "bParameter"); var parameterC = MakeParameter(environment, "cColumn", "cParameter"); var parameterD = MakeParameter(environment, "dColumn", "dParameter"); var command = environment.BuildUpdateCommand( "aTable", new [] { new DbParameterAccessor(parameterA, typeof(string), 0, "varchar"), new DbParameterAccessor(parameterB, typeof(int), 1, "integer") }, new[] { new DbParameterAccessor(parameterC, typeof(string), 2, "varchar"), new DbParameterAccessor(parameterD, typeof(int), 3, "integer") }); Assert.AreEqual("update aTable set [aColumn]=@aParameter, [bColumn]=@bParameter where [cColumn]=@cParameter and [dColumn]=@dParameter", command); }
public override void DoTable(fit.Parse theTable) { if (Args.Length>0){ IDbEnvironment env; String requestedEnv=Args[0].ToUpper().Trim(); if ("ORACLE".Equals(requestedEnv)) env = new OracleEnvironment(); else if ("SQLSERVER".Equals(requestedEnv)) env = new SqlServerEnvironment(); else if ("SQLSERVER2000".Equals(requestedEnv)) env = new SqlServer2000Environment(); else if ("DB2".Equals(requestedEnv)) throw new ApplicationException("Moved DB2 Environment to dbfit.DB2 assembly. Need to instantiate here."); //env = new DB2Environment(); else if ("MYSQL".Equals(requestedEnv)) env = Activator.CreateInstance(Type.GetType("dbfit.MySqlEnvironment, dbfit.MySql")) as IDbEnvironment; else throw new ApplicationException("DB Environment not supported " + requestedEnv); DbEnvironmentFactory.DefaultEnvironment=env; this.mySystemUnderTest=env; } base.DoTable(theTable); }
public override void DoTable(fit.Parse theTable) { if (Args.Length > 0) { IDbEnvironment env; String requestedEnv = Args[0].ToUpper().Trim(); if ("ORACLE".Equals(requestedEnv)) { env = new OracleEnvironment(); } else if ("SQLSERVER".Equals(requestedEnv)) { env = new SqlServerEnvironment(); } else if ("SQLSERVER2000".Equals(requestedEnv)) { env = new SqlServer2000Environment(); } else if ("DB2".Equals(requestedEnv)) { throw new ApplicationException("Moved DB2 Environment to dbfit.DB2 assembly. Need to instantiate here."); } //env = new DB2Environment(); else if ("MYSQL".Equals(requestedEnv)) { env = Activator.CreateInstance(Type.GetType("dbfit.MySqlEnvironment, dbfit.MySql")) as IDbEnvironment; } else { throw new ApplicationException("DB Environment not supported " + requestedEnv); } DbEnvironmentFactory.DefaultEnvironment = env; this.mySystemUnderTest = env; } base.DoTable(theTable); }