public override void FixtureSetup() { base.FixtureSetup(); var projectId = new TestProjectId(FDOBackendProviderType.kMemoryOnly, "Test.fwdata"); m_cache = FdoCache.CreateCacheWithNewBlankLangProj(projectId, "en", "fr", "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, new FdoSettings()); NonUndoableUnitOfWorkHelper.Do(m_cache.ActionHandlerAccessor, () => m_cache.LangProject.MorphologicalDataOA.ParserParameters = "<ParserParameters><XAmple><MaxNulls>1</MaxNulls><MaxPrefixes>5</MaxPrefixes><MaxInfixes>1</MaxInfixes><MaxSuffixes>5</MaxSuffixes><MaxInterfixes>0</MaxInterfixes><MaxAnalysesToReturn>10</MaxAnalysesToReturn></XAmple><ActiveParser>XAmple</ActiveParser></ParserParameters>"); m_retriever = new M3ParserModelRetriever(m_cache); }
public void PortAllBEPsTestsUsingAnUnopenedSource( [Values(FDOBackendProviderType.kXML, FDOBackendProviderType.kDb4oClientServer)] FDOBackendProviderType sourceType, [Values(FDOBackendProviderType.kXML, FDOBackendProviderType.kDb4oClientServer, FDOBackendProviderType.kMemoryOnly)] FDOBackendProviderType targetType) { var path = Path.Combine(Path.GetTempPath(), "FieldWorksTest"); if (!Directory.Exists(path)) Directory.CreateDirectory(path); var sourceBackendStartupParameters = GenerateBackendStartupParameters(false, sourceType); var targetBackendStartupParameters = GenerateBackendStartupParameters(true, targetType); var sourceGuids = new List<Guid>(); DeleteDatabase(sourceBackendStartupParameters); DeleteDatabase(targetBackendStartupParameters); // Set up data source var projId = new TestProjectId(sourceBackendStartupParameters.ProjectId.Type, sourceBackendStartupParameters.ProjectId.Path); using (FdoCache sourceCache = FdoCache.CreateCacheWithNewBlankLangProj( projId, "en", "fr", "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, new FdoSettings())) { // BEP is a singleton, so we shouldn't call Dispose on it. This will be done // by service locator. var sourceDataSetup = GetMainBEPInterface(sourceCache); sourceCache.ServiceLocator.GetInstance<IUndoStackManager>().Save(); // persist the new db so we can reopen it. sourceDataSetup.LoadDomain(BackendBulkLoadDomain.All); sourceGuids.AddRange(GetAllCmObjects(sourceCache).Select(obj => obj.Guid)); // Collect all source Guids } // Migrate source data to new BEP. IThreadedProgress progressDlg = new DummyProgressDlg(); using (var targetCache = FdoCache.CreateCacheWithNoLangProj( new TestProjectId(targetBackendStartupParameters.ProjectId.Type, null), "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, new FdoSettings())) { // BEP is a singleton, so we shouldn't call Dispose on it. This will be done // by service locator. var targetDataSetup = GetMainBEPInterface(targetCache); targetDataSetup.InitializeFromSource(new TestProjectId(targetBackendStartupParameters.ProjectId.Type, targetBackendStartupParameters.ProjectId.Path), sourceBackendStartupParameters, "en", progressDlg); targetDataSetup.LoadDomain(BackendBulkLoadDomain.All); CompareResults(sourceGuids, targetCache); } sourceGuids.Clear(); }
/// <summary /> public void StartupExtant() { ProjectId = new TestProjectId(FDOBackendProviderType.kXML, Project); // This will throw an UnauthorizedAccessException because of the // StartupInternalWithDataMigrationIfNeeded() override below StartupExtantLanguageProject(ProjectId, false, new DummyProgressDlg()); }
/// <summary/> public void Startup() { ProjectId = new TestProjectId(FDOBackendProviderType.kXML, Project); StartupInternal(ModelVersion); }