public TestBase() { var container = new IocContainer(); this._factory = new ExecutorFactory(container); var type = this.GetType(); var db = type.GetAttribute <DbAttribute>(); var provider = db == null ? "ce" : db.Provider; switch (provider) { case "sql": this._testManager = new MsSqlTestManager(); break; default: this._testManager = new MsCeTestManager(); break; } this._Engine = this._testManager.Engine; container.Add <IDbEngine>(lmps => this.Context); var classScripts = this.GetType().GetAttribute <ScriptsAttribute>(); if (classScripts != null) { this._testManager.Execute(classScripts.Keys); } }
private void CreateTable(TestManagerBase manager) { var sql = ("CREATE TABLE TestTable(ID bigint PRIMARY KEY identity(1,1),UserName nvarchar(255))"); manager.Engine .Execute(sql) .ToNonQuery(); }
private void CreateTable(TestManagerBase manager) { var sql = ("CREATE TABLE TestTable(Id bigint PRIMARY KEY identity(1,1),UserName nvarchar(255),Roles nvarchar(2000))"); manager.Engine .Execute(sql) .ToNonQuery(); }
private void InsertRows(TestManagerBase manager, int rowCount = 10) { using(var dbContext = manager.Engine.ContextTransaction) { for(int i = 0; i < rowCount; i++) { dbContext.Execute("INSERT INTO TestTable(UserName) VALUES (@username)", "@username", "user" + i) .ToNonQuery(); } dbContext.Commit(); } }
private void InsertRows(TestManagerBase manager, int rowCount = 10) { using (var dbContext = manager.Engine.ContextTransaction) { for (int i = 0; i < rowCount; i++) { dbContext.Execute("INSERT INTO TestTable(UserName) VALUES (@username)", "@username", "user" + i) .ToNonQuery(); } dbContext.Commit(); } }
void ITestMethodHandler.Start() { var container = new IocContainer(); this._factory = new ExecutorFactory(container); var methodInfo = TestContext.MethodInfo.MethodInfo; var db = methodInfo.GetAttribute <DbAttribute>(); var provider = db == null ? DbEngineProvider.MicrosoftSqlServerCompact : db.Provider; switch (provider) { case DbEngineProvider.MicrosoftSqlServer: this._testManager = new MsSqlTestManager(); break; default: this._testManager = new MsCeTestManager(); break; } Manager = this._testManager.Manager; container.AddService(this.Manager); container.AddService <IDbEngine>(lmps => this.Context); var methodScripts = methodInfo.GetAttribute <ScriptsAttribute>(); if (methodScripts != null) { this._testManager.Execute(methodScripts.Keys); } else { var classScripts = this.GetType().GetAttribute <ScriptsAttribute>(); if (classScripts != null) { this._testManager.Execute(classScripts.Keys); } } }