1 //! Ensure loadable_extension.rs works.
2
3 use rusqlite::{Connection, Result};
4 use std::env::consts::{DLL_PREFIX, DLL_SUFFIX};
5
main() -> Result<()>6 fn main() -> Result<()> {
7 let db = Connection::open_in_memory()?;
8
9 unsafe {
10 db.load_extension_enable()?;
11 db.load_extension(
12 format!(
13 "target/debug/examples/{}loadable_extension{}",
14 DLL_PREFIX, DLL_SUFFIX
15 ),
16 None,
17 )?;
18 db.load_extension_disable()?;
19 }
20
21 let str = db.query_row("SELECT rusqlite_test_function()", [], |row| {
22 row.get::<_, String>(0)
23 })?;
24 assert_eq!(&str, "Rusqlite extension loaded correctly!");
25 Ok(())
26 }
27