public void TestMethod1() { Assembly assemblyFile = AppDomain.CurrentDomain.GetAssemblies().SingleOrDefault( assembly => assembly.GetName().Name == "TXSoftware.DataObjectsNetEntityModel.DBProvider.Xtensive"); //Assembly assembly = Assembly.LoadFrom(mock_ModuleFileXtensiveFile); if (assemblyFile == null) { assemblyFile = Assembly.LoadFrom(mock_ModuleFileXtensiveFile); } Assert.IsNotNull(assemblyFile); IDBProviderModule module; bool loadResult = DBProviderManager.Instance.LoadModule(assemblyFile, out module); Assert.IsTrue(loadResult); Assert.IsNotNull(module); DBProviderModule dbProviderModule = (DBProviderModule)module; Assert.IsNotNull(dbProviderModule); dbProviderModule.mock_implementationFileFolder = mock_ModuleFileXtensiveFolder; DBProviderManager.Instance.InitModules(); Application.EnableVisualStyles(); FormImportDBSchema.ResultData resultData; bool dialogShow = FormImportDBSchema.DialogShow(out resultData); }
public void Test_Load_Xtensive_DBProvider() { TestLogger logger = new TestLogger("Test_Load_Xtensive_DBProvider"); DBProviderModule xtensiveModule = new DBProviderModule(); //xtensiveModule.mock_implementationFileFolder = @"c:\Projects\Private\xp-dev.com\doemd\Sources\DBProviders\DBProvider.Xtensive.Implementation\bin\Debug\"; xtensiveModule.mock_implementationFileFolder = @"d:\Projects\Private\xp.dev.com\doemd\Sources\DBProviders\DBProvider.Xtensive.Implementation\bin\Debug\"; bool result = xtensiveModule.Initialize(); try { Assert.IsTrue(result, "Initialization of Xtensive's 'DBProviderModule' failed. Last errors: " + string.Join(Environment.NewLine, xtensiveModule.LastErrors.Select(ex => ex.Message))); Assert.IsNotNull(xtensiveModule.Providers, "Xtensive's 'DBProviderModule' returns null list of providers."); Assert.AreNotEqual(xtensiveModule.Providers.Length, 0, "Xtensive's 'DBProviderModule' returns zero providers."); IDBProvider dbProvider = xtensiveModule.Providers.First(); var connectionInfo = dbProvider.ConnectionInfoProvider.CreateInfo(new StorageEngine("sqlserver"), "sa", "halo", "localhost", "TheConsole"); try { bool connected = dbProvider.Connect(connectionInfo); Assert.IsTrue(connected, "Connection to sql server failed."); ServerCollection servers = dbProvider.GetAllServers(LoadingMode.TopLevel); Assert.IsNotNull(servers, "dbProvider.GetAllServers returns null"); Assert.AreNotEqual(servers.Count, 0, "dbProvider.GetAllServers returns empty list of servers."); logger.Log("Provider '{0}' retrieved {1} servers", dbProvider.Name, servers.Count); foreach (var server in servers) { logger.Log("\tserver '{0}'", server.Name); } Server serverLocalhost = servers["localhost"]; bool refreshResult = dbProvider.Refresh(serverLocalhost, LoadingMode.TopLevel); Assert.IsTrue(refreshResult, "Refreshing details about server 'localhost' failed"); logger.Log("\tProvider '{0}' refreshed {1} databases for server '{2}'", dbProvider.Name, serverLocalhost.Databases.Count, serverLocalhost.Name); foreach (var database in serverLocalhost.Databases) { logger.Log("\t\tdatabase '{0}'", database.Name); refreshResult = dbProvider.Refresh(database, LoadingMode.TopLevel); Assert.IsTrue(refreshResult, string.Format("Refreshing details about database '{0}' failed", database.Name)); logger.Log("\t\tProvider '{0}' refreshed {1} schemas for database '{2}'", dbProvider.Name, database.Schemas.Count, database.Name); foreach (var schema in database.Schemas) { logger.Log("\t\t\tschema '{0}'", schema.Name); } } } finally { dbProvider.Disconnect(); Assert.IsFalse(dbProvider.IsConnected, "DbProvider is still connected after 'Disconnect' method called."); } } finally { xtensiveModule.Deinitialize(); } }