gluesql-core 0.20.0

GlueSQL - Open source SQL database engine fully written in Rust with pure functional execution layer, easily swappable storage and web assembly support!
Documentation
use crate::{ast::Statement, plan::StatementPlan};

pub fn begin() -> StatementPlan {
    Statement::StartTransaction.into()
}
pub fn commit() -> StatementPlan {
    Statement::Commit.into()
}
pub fn rollback() -> StatementPlan {
    Statement::Rollback.into()
}

#[cfg(test)]
mod tests {
    use crate::query_builder::{begin, commit, rollback, test};

    #[test]
    fn transaction() {
        let actual = begin();
        let expected = "START TRANSACTION";
        test(&Ok(actual), expected);

        let actual = commit();
        let expected = "COMMIT";
        test(&Ok(actual), expected);

        let actual = rollback();
        let expected = "ROLLBACK";
        test(&Ok(actual), expected);
    }
}