use raio::client::error::ClientError; use raio::client::{Client, ClientConfig}; use raio::client::auth::Basic; use raio::messaging::commit_prepare::CommitPrepare; use raio::messaging::query::Query; #[async_std::test] pub async fn transaction_simple() -> Result<(), ClientError> { let client = Client::create( "localhost:7687", Basic::new("neo4j", "mastertest"), ClientConfig::default("raio-rs-test", "0.2.0")); let mut transaction = client.begin(CommitPrepare::new()).await?; let mut query_1 = Query::new("RETURN $x + 42 as x"); query_1.param("x", 3); let mut query_2 = Query::new("RETURN $y as y"); query_2.param("y", true); let res_1 = transaction.run(&query_1).await?; assert_eq!( res_1.first().expect("At least one result in _1").get_field_typed("x"), Some(&45)); let res_2 = transaction.run(&query_2).await?; assert_eq!( res_2.first().expect("At least one result in _2").get_field_typed("y"), Some(&true)); transaction.commit().await?; Ok(()) }