/// <summary> /// Wipe out the current BEP's file(s), since it is about to be created ex-nihilo. /// </summary> private static void DeleteDatabase(BackendStartupParameter backendParameters, bool assertThatDbWasDeleted = true) { string pathname = string.Empty; if (backendParameters.ProjectId.Type != BackendProviderType.kMemoryOnly) { pathname = backendParameters.ProjectId.Path; } if (backendParameters.ProjectId.Type != BackendProviderType.kMemoryOnly && File.Exists(pathname)) { try { File.Delete(pathname); //The File.Delete command returns before the OS has actually removed the file, //this causes re-creation of the file to fail intermittently so we'll wait a bit for it to be gone. for (var i = 0; File.Exists(pathname) && i < 5; ++i) { Thread.Sleep(10); } } catch (IOException) { // Don't crash, fail the assert if we couldn't delete the file } // We want to assert during the setup of test conditions because the test isn't valid if we don't start clean // If we fail to delete the files after the test (beause the OS hangs on to the handle too long for instance) // this is not cause to fail the test. if (assertThatDbWasDeleted) { Assert.That(!File.Exists(pathname), "Database file failed to be deleted."); } } }
/// <summary> /// Wipe out the current BEP's file(s), since it is about to be created ex-nihilo. /// </summary> /// <param name="backendParameters"></param> private static void DeleteDatabase(BackendStartupParameter backendParameters) { // db4o client/server has its own mechanism. if (backendParameters.ProjectId.Type == FDOBackendProviderType.kDb4oClientServer) { return; } string pathname = string.Empty; if (backendParameters.ProjectId.Type != FDOBackendProviderType.kMemoryOnly) { pathname = backendParameters.ProjectId.Path; } if (backendParameters.ProjectId.Type != FDOBackendProviderType.kMemoryOnly && File.Exists(pathname)) { File.Delete(pathname); //The File.Delete command returns before the OS has actually removed the file, //this causes re-creation of the file to fail intermittently so we'll wait a bit for it to be gone. for (var i = 0; File.Exists(pathname) && i < 5; ++i) { Thread.Sleep(10); } Assert.That(!File.Exists(pathname), "Database file failed to be deleted."); } }
/// <summary> /// Wipe out the current BEP's file(s), since it is about to be created ex-nihilo. /// </summary> /// <param name="backendParameters"></param> private static void DeleteDatabase(BackendStartupParameter backendParameters) { // db4o client/server has its own mechanism. if (backendParameters.ProjectId.Type == FDOBackendProviderType.kDb4oClientServer) { return; } string pathname = string.Empty; if (backendParameters.ProjectId.Type != FDOBackendProviderType.kMemoryOnly) { pathname = backendParameters.ProjectId.Path; } if (backendParameters.ProjectId.Type != FDOBackendProviderType.kMemoryOnly && File.Exists(pathname)) { File.Delete(pathname); } }