public void Constructor_ValidPath_ExpectedProperties()
        {
            // Setup
            string fileName = Path.GetRandomFileName();
            string filePath = TestHelper.GetTestDataPath(testPath, fileName);

            // Call
            using (new FileDisposeHelper(filePath))
                using (var file = new ProjectDatabaseSourceFile(filePath))
                {
                    // Assert
                    Assert.IsInstanceOf <SqLiteDatabaseReaderBase>(file);
                }
        }
        public void GetVersion_EmptyProjectDatabaseFile_ReturnsEmpty()
        {
            // Setup
            string filePath = TestHelper.GetTestDataPath(testPath, "EmptyDatabase.rtd");

            using (var file = new ProjectDatabaseSourceFile(filePath))
            {
                // Call
                string version = file.GetVersion();

                // Assert
                Assert.IsEmpty(version);
            }
        }
        public void GetVersion_EmptyFile_ThrowsStorageValidationException()
        {
            // Setup
            string fileName = Path.GetRandomFileName();
            string filePath = TestHelper.GetTestDataPath(testPath, fileName);

            using (new FileDisposeHelper(filePath))
                using (var file = new ProjectDatabaseSourceFile(filePath))
                {
                    // Call
                    TestDelegate call = () => file.GetVersion();

                    // Assert
                    string message = Assert.Throws <StorageValidationException>(call).Message;
                    Assert.AreEqual($"Het bestand '{filePath}' moet een geldig Riskeer of Ringtoets projectbestand zijn.",
                                    message);
                }
        }