/// <summary> /// Returns the version from the database pointed at by the <paramref name="filePath"/>. /// </summary> /// <param name="filePath">The location of the database.</param> /// <returns>The version from the database as a <see cref="string"/>.</returns> /// <exception cref="CriticalFileReadException">Thrown when no connection with the hydraulic /// boundary database could be created.</exception> private static string GetVersion(string filePath) { using (var db = new HydraulicBoundaryDatabaseReader(filePath)) { return(db.ReadVersion()); } }
public void ReadVersion_ValidFile_ReturnsReadVersion() { // Setup string hydraulicBoundaryDatabaseFile = Path.Combine(testDataPath, "complete.sqlite"); using (var reader = new HydraulicBoundaryDatabaseReader(hydraulicBoundaryDatabaseFile)) { // Call string version = reader.ReadVersion(); // Assert Assert.AreEqual("Dutch coast South19-11-2015 12:0013", version); } }
public void ReadVersion_EmptyDatabase_ThrowsCriticalFileReadException() { // Setup string hydraulicBoundaryDatabaseFile = Path.Combine(testDataPath, "emptyGeneral.sqlite"); using (var reader = new HydraulicBoundaryDatabaseReader(hydraulicBoundaryDatabaseFile)) { // Call TestDelegate test = () => reader.ReadVersion(); // Assert string expectedMessage = $"Fout bij het lezen van bestand '{hydraulicBoundaryDatabaseFile}': kritieke fout opgetreden bij het uitlezen van waardes uit kolommen in de database."; var exception = Assert.Throws <CriticalFileReadException>(test); Assert.AreEqual(expectedMessage, exception.Message); } }
public void ReadVersion_InvalidTrackIdColumn_ThrowsCriticalFileReadException() { // Setup string hydraulicBoundaryDatabaseFile = Path.Combine(testDataPath, "empty.sqlite"); using (var reader = new HydraulicBoundaryDatabaseReader(hydraulicBoundaryDatabaseFile)) { // Call TestDelegate test = () => reader.ReadVersion(); // Assert var exception = Assert.Throws <CriticalFileReadException>(test); string expectedMessage = $"Fout bij het lezen van bestand '{hydraulicBoundaryDatabaseFile}': kon geen locaties verkrijgen van de database."; Assert.AreEqual(expectedMessage, exception.Message); Assert.IsInstanceOf <SQLiteException>(exception.InnerException); } }