Skip to content

Commit a224706

Browse files
committed
Add a version check for the bundled sqlite version
expected version should be at least 3.42.0.
1 parent 9cb6347 commit a224706

File tree

1 file changed

+17
-0
lines changed
  • mithril-common/src/sqlite

1 file changed

+17
-0
lines changed

mithril-common/src/sqlite/mod.rs

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,4 +45,21 @@ mod test {
4545
.await
4646
.expect("Vacuum should not fail");
4747
}
48+
49+
#[test]
50+
fn sqlite_version_should_be_3_42_or_more() {
51+
let connection = Connection::open(":memory:").unwrap();
52+
let mut statement = connection.prepare("select sqlite_version()").unwrap();
53+
let cursor = statement.iter().next().unwrap().unwrap();
54+
let db_version = cursor.read::<&str, _>(0);
55+
let version = semver::Version::parse(db_version)
56+
.expect("Sqlite version should be parsable to semver");
57+
let requirement = semver::VersionReq::parse(">=3.42.0").unwrap();
58+
59+
assert!(
60+
requirement.matches(&version),
61+
"Sqlite version {} is lower than 3.42.0",
62+
version
63+
)
64+
}
4865
}

0 commit comments

Comments
 (0)