diff --git a/src/db.rs b/src/db.rs index 0708a00..57664ba 100644 --- a/src/db.rs +++ b/src/db.rs @@ -162,8 +162,10 @@ pub struct Meta { /// # use keep::db; /// # use keep::db::*; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// # Ok(()) /// # } @@ -213,8 +215,10 @@ pub fn open(path: PathBuf) -> Result { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { /// id: None, @@ -260,8 +264,10 @@ pub fn insert_item(conn: &Connection, item: Item) -> Result { /// # use keep::db::*; /// # use keep::compression_engine::CompressionType; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let compression = CompressionType::LZ4; /// let item = db::create_item(&conn, compression)?; @@ -312,8 +318,10 @@ pub fn create_item( /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: None, ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let item_id = db::insert_item(&conn, item)?; @@ -356,8 +364,10 @@ pub fn add_tag(conn: &Connection, item_id: i64, tag_name: &str) -> Result<()> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: None, ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let item_id = db::insert_item(&conn, item)?; @@ -399,8 +409,10 @@ pub fn add_meta(conn: &Connection, item_id: i64, name: &str, value: &str) -> Res /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: Some(1), size: Some(1024), compression: "lz4".to_string(), ts: Utc::now() }; /// db::update_item(&conn, item)?; @@ -441,8 +453,10 @@ pub fn update_item(conn: &Connection, item: Item) -> Result<()> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: Some(1), ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// db::delete_item(&conn, item)?; @@ -479,8 +493,10 @@ pub fn delete_item(conn: &Connection, item: Item) -> Result<()> { /// # use keep::db; /// # use keep::db::*; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let meta = Meta { id: 1, name: "temp".to_string(), value: "".to_string() }; /// db::query_delete_meta(&conn, meta)?; @@ -521,8 +537,10 @@ pub fn query_delete_meta(conn: &Connection, meta: Meta) -> Result<()> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: None, ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let item_id = db::insert_item(&conn, item)?; @@ -565,8 +583,10 @@ pub fn query_upsert_meta(conn: &Connection, meta: Meta) -> Result<()> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: None, ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let item_id = db::insert_item(&conn, item)?; @@ -614,8 +634,10 @@ pub fn store_meta(conn: &Connection, meta: Meta) -> Result<()> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: None, ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let item_id = db::insert_item(&conn, item)?; @@ -657,8 +679,10 @@ pub fn insert_tag(conn: &Connection, tag: Tag) -> Result<()> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: Some(1), ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// db::delete_item_tags(&conn, item)?; @@ -697,8 +721,10 @@ pub fn delete_item_tags(conn: &Connection, item: Item) -> Result<()> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: None, ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let item_id = db::insert_item(&conn, item)?; @@ -750,8 +776,10 @@ pub fn set_item_tags(conn: &Connection, item: Item, tags: &Vec) -> Resul /// # use keep::db; /// # use keep::db::*; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let all_items = db::query_all_items(&conn)?; /// assert!(all_items.len() >= 0); @@ -802,8 +830,10 @@ pub fn query_all_items(conn: &Connection) -> Result> { /// # use keep::db; /// # use keep::db::*; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let tags = vec!["work".to_string(), "urgent".to_string()]; /// let tagged_items = db::query_tagged_items(&conn, &tags)?; @@ -870,8 +900,10 @@ pub fn query_tagged_items<'a>(conn: &'a Connection, tags: &'a Vec) -> Re /// # use keep::db; /// # use keep::db::*; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let items = db::get_items(&conn)?; /// # Ok(()) @@ -908,8 +940,10 @@ pub fn get_items(conn: &Connection) -> Result> { /// # use keep::db::*; /// # use std::collections::HashMap; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let tags = vec!["project".to_string()]; /// let meta = HashMap::from([("status".to_string(), Some("active".to_string()))]); @@ -982,8 +1016,10 @@ pub fn get_items_matching( /// # use keep::db::*; /// # use std::collections::HashMap; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let tags = vec!["latest".to_string()]; /// let item = db::get_item_matching(&conn, &tags, &HashMap::new())?; @@ -1024,8 +1060,10 @@ pub fn get_item_matching( /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: None, ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let item_id = db::insert_item(&conn, item)?; @@ -1080,8 +1118,10 @@ pub fn get_item(conn: &Connection, item_id: i64) -> Result> { /// # use keep::db; /// # use keep::db::*; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let latest = db::get_item_last(&conn)?; /// # Ok(()) @@ -1136,8 +1176,10 @@ pub fn get_item_last(conn: &Connection) -> Result> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: Some(1), ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let tags = db::get_item_tags(&conn, &item)?; @@ -1187,8 +1229,10 @@ pub fn get_item_tags(conn: &Connection, item: &Item) -> Result> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: Some(1), ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let meta = db::get_item_meta(&conn, &item)?; @@ -1240,8 +1284,10 @@ pub fn get_item_meta(conn: &Connection, item: &Item) -> Result> { /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: Some(1), ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let meta = db::get_item_meta_name(&conn, &item, "mime_type".to_string())?; @@ -1290,8 +1336,10 @@ pub fn get_item_meta_name(conn: &Connection, item: &Item, name: String) -> Resul /// # use keep::db::*; /// # use chrono::Utc; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let item = Item { id: Some(1), ts: Utc::now(), size: None, compression: "lz4".to_string() }; /// let value = db::get_item_meta_value(&conn, &item, "source".to_string())?; @@ -1334,8 +1382,10 @@ pub fn get_item_meta_value(conn: &Connection, item: &Item, name: String) -> Resu /// # use keep::db; /// # use keep::db::*; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let ids = vec![1, 2, 3]; /// let tags_map = db::get_tags_for_items(&conn, &ids)?; @@ -1401,8 +1451,10 @@ pub fn get_tags_for_items( /// # use keep::db; /// # use keep::db::*; /// # use std::path::PathBuf; +/// # use tempfile; /// # fn main() -> anyhow::Result<()> { -/// let db_path = PathBuf::from("keep.db"); +/// let _tmp = tempfile::tempdir()?; +/// let db_path = _tmp.path().join("keep.db"); /// let conn = db::open(db_path)?; /// let ids = vec![1, 2, 3]; /// let meta_map = db::get_meta_for_items(&conn, &ids)?;