public void TestUpgradeOldDatabaseFiles() { var testDirName = "test-directory-" + Runtime.CurrentTimeMillis(); var rootDirPath = RootDirectory.FullName; var testDirPath = Path.Combine(rootDirPath, testDirName); var testDirInfo = Directory.CreateDirectory(testDirPath); var dbStream = GetAsset("withattachments.cblite"); var destStream = File.OpenWrite(Path.Combine(testDirPath, "withattachments" + Manager.DatabaseSuffix)); dbStream.CopyTo(destStream); dbStream.Dispose(); destStream.Dispose(); var attStream = GetAsset("attachment.blob"); Directory.CreateDirectory(Path.Combine(testDirPath, "withattachments/attachments")); destStream = File.OpenWrite(Path.Combine(testDirPath, "withattachments/attachments/356a192b7913b04c54574d18c28d46e6395428ab.blob")); attStream.CopyTo(destStream); destStream.Dispose(); attStream.Dispose(); StopCBLite(); manager = new Manager(testDirInfo, Manager.DefaultOptions); var db = manager.GetDatabaseWithoutOpening("withattachments", true); int version = DatabaseUpgraderFactory.SchemaVersion(db.Path); Assert.IsTrue(version >= 101, "Upgrade failed"); Assert.IsFalse(Directory.Exists(Path.Combine(testDirPath, "withattachments/attachments")), "Failed to remove old attachments dir"); Assert.IsTrue(Directory.Exists(Path.Combine(testDirPath, "withattachments attachments")), "Failed to create new attachments dir"); }