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}