sqlighters/
lib.rs

1#![allow(dead_code)]
2
3mod builder;
4mod database;
5mod page;
6mod record;
7mod values;
8mod varint;
9
10#[cfg(test)]
11mod tests {
12    use crate::builder::DatabaseBuilder;
13    use crate::database::{write_sqlite, Database};
14    use crate::record::Record;
15    use crate::values;
16    use std::fs::File;
17    use std::io::{BufWriter, Error};
18
19    #[test]
20    fn test_build() -> Result<(), Error> {
21        let mut builder = DatabaseBuilder::new();
22        builder.schema("foo", "create table foo(bar varchar(10))");
23        for i in 0..10000 {
24            let mut record = Record::new(i);
25            record.add_value(values::string("helloworld"));
26            builder.add_record(record);
27        }
28        let database: Database = builder.into();
29        let file = File::create("foo.db")?;
30        let writer = BufWriter::new(file);
31        write_sqlite(database, writer)?;
32        Ok(())
33    }
34}