Fix multiple Clippy
Lints (#2159)
This commit is contained in:
parent
a1b1fead7b
commit
5485883d3c
55 changed files with 415 additions and 420 deletions
.github/workflows
lib
src
dbs
doc
fnc
idx
kvs
sql
tests
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
|
@ -84,7 +84,7 @@ jobs:
|
|||
sudo apt-get -y install protobuf-compiler libprotobuf-dev
|
||||
|
||||
- name: Run cargo clippy
|
||||
run: cargo clippy --no-deps -- -D warnings
|
||||
run: cargo clippy --all-targets --all-features -- -D warnings
|
||||
|
||||
cli:
|
||||
name: Test command line
|
||||
|
|
2
.github/workflows/nightly.yml
vendored
2
.github/workflows/nightly.yml
vendored
|
@ -61,7 +61,7 @@ jobs:
|
|||
run: cargo fmt --all --check -- ./lib/tests/**/*.rs ./lib/src/kvs/tests/*.rs
|
||||
|
||||
- name: Check linting with clippy
|
||||
run: cargo clippy -- -D warnings
|
||||
run: cargo clippy --all-targets --all-features -- -D warnings
|
||||
|
||||
- name: Run WebAssembly check
|
||||
run: cargo check --features kv-mem,kv-indxdb,protocol-ws,protocol-http --target wasm32-unknown-unknown --package surrealdb
|
||||
|
|
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
|
@ -61,7 +61,7 @@ jobs:
|
|||
run: cargo fmt --all --check -- ./lib/tests/**/*.rs ./lib/src/kvs/tests/*.rs
|
||||
|
||||
- name: Check linting with clippy
|
||||
run: cargo clippy -- -D warnings
|
||||
run: cargo clippy --all-targets --all-features -- -D warnings
|
||||
|
||||
- name: Run WebAssembly check
|
||||
run: cargo check --features kv-mem,kv-indxdb,protocol-ws,protocol-http --target wasm32-unknown-unknown --package surrealdb
|
||||
|
|
|
@ -200,7 +200,7 @@ impl Iterable {
|
|||
let rid = Thing::from((key.tb, key.id));
|
||||
// Create a new operable value
|
||||
let val = Operable::Value(val);
|
||||
let mut child_ctx = Context::new(&ctx);
|
||||
let mut child_ctx = Context::new(ctx);
|
||||
child_ctx.add_thing(&rid);
|
||||
// Process the record
|
||||
ite.process(&child_ctx, opt, stm, val).await;
|
||||
|
@ -472,7 +472,7 @@ impl Iterable {
|
|||
let key = thing::new(opt.ns(), opt.db(), &table.0, &thing.id);
|
||||
let val = txn.lock().await.get(key.clone()).await?;
|
||||
let rid = Thing::from((key.tb, key.id));
|
||||
let mut ctx = Context::new(&ctx);
|
||||
let mut ctx = Context::new(ctx);
|
||||
ctx.add_thing(&rid);
|
||||
// Parse the data from the store
|
||||
let val = Operable::Value(match val {
|
||||
|
|
|
@ -71,7 +71,7 @@ impl<'a> Document<'a> {
|
|||
}
|
||||
Data::UnsetExpression(i) => {
|
||||
for i in i.iter() {
|
||||
self.current.to_mut().del(ctx, opt, &i).await?
|
||||
self.current.to_mut().del(ctx, opt, i).await?
|
||||
}
|
||||
}
|
||||
Data::UpdateExpression(x) => {
|
||||
|
|
|
@ -260,9 +260,9 @@ mod tests {
|
|||
"true is false is true",
|
||||
);
|
||||
test(
|
||||
vec![Value::from(3.14), Value::from(2.72), Value::from(1.61)].into(),
|
||||
vec![Value::from(3.56), Value::from(2.72), Value::from(1.61)].into(),
|
||||
" is not ",
|
||||
"3.14f is not 2.72f is not 1.61f",
|
||||
"3.56f is not 2.72f is not 1.61f",
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -324,7 +324,7 @@ mod tests {
|
|||
let (quote, _) = line.split_once("=>").unwrap();
|
||||
let name = quote.trim().trim_matches('"');
|
||||
|
||||
if crate::sql::function::function_names(&name).is_err() {
|
||||
if crate::sql::function::function_names(name).is_err() {
|
||||
problems.push(format!("couldn't parse {name} function"));
|
||||
}
|
||||
|
||||
|
|
|
@ -516,9 +516,7 @@ impl<'a> KeysIterator<'a> {
|
|||
}
|
||||
} else {
|
||||
self.current_node = self.node_queue.pop_front();
|
||||
if self.current_node.is_none() {
|
||||
return None;
|
||||
}
|
||||
self.current_node.as_ref()?;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -210,7 +210,7 @@ where
|
|||
{
|
||||
if let Some(root_id) = self.state.root {
|
||||
let root = self.keys.load_node::<BK>(tx, root_id).await?;
|
||||
if root.node.keys().len() as u32 == self.full_size {
|
||||
if root.node.keys().len() == self.full_size {
|
||||
let new_root_id = self.new_node_id();
|
||||
let new_root =
|
||||
self.new_node(new_root_id, Node::Internal(BK::default(), vec![root_id]));
|
||||
|
@ -256,7 +256,7 @@ where
|
|||
}
|
||||
let child_idx = keys.get_child_idx(&key);
|
||||
let child = self.keys.load_node::<BK>(tx, children[child_idx]).await?;
|
||||
let next = if child.node.keys().len() as u32 == self.full_size {
|
||||
let next = if child.node.keys().len() == self.full_size {
|
||||
let split_result =
|
||||
self.split_child::<BK>(tx, node, child_idx, child).await?;
|
||||
if key.gt(&split_result.median_key) {
|
||||
|
@ -431,7 +431,7 @@ where
|
|||
let left_idx = keys.get_child_idx(&key_to_delete);
|
||||
let left_id = children[left_idx];
|
||||
let mut left_node = self.keys.load_node::<BK>(tx, left_id).await?;
|
||||
if left_node.node.keys().len() as u32 >= self.state.minimum_degree {
|
||||
if left_node.node.keys().len() >= self.state.minimum_degree {
|
||||
// CLRS: 2a -> left_node is named `y` in the book
|
||||
if let Some((key_prim, payload_prim)) = left_node.node.keys().get_last_key() {
|
||||
keys.remove(&key_to_delete);
|
||||
|
@ -615,6 +615,7 @@ where
|
|||
Err(Error::CorruptedIndex)
|
||||
}
|
||||
|
||||
#[allow(clippy::too_many_arguments)]
|
||||
async fn merge_nodes<BK>(
|
||||
tx: &mut Transaction,
|
||||
keys: &mut BK,
|
||||
|
|
|
@ -133,7 +133,7 @@ impl Filter {
|
|||
if c.eq(n) {
|
||||
ng.push(Term::Unchanged);
|
||||
} else {
|
||||
ng.push(Term::NewTerm(n.into_iter().collect()));
|
||||
ng.push(Term::NewTerm(n.iter().collect()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -159,7 +159,7 @@ impl Filter {
|
|||
if c.eq(n) {
|
||||
ng.push(Term::Unchanged);
|
||||
} else {
|
||||
ng.push(Term::NewTerm(n.into_iter().collect()));
|
||||
ng.push(Term::NewTerm(n.iter().collect()));
|
||||
}
|
||||
}
|
||||
FilterResult::Terms(ng)
|
||||
|
@ -718,7 +718,7 @@ mod tests {
|
|||
test_analyser(
|
||||
"DEFINE ANALYZER test TOKENIZERS blank,class FILTERS lowercase,ngram(2,3);",
|
||||
"Ālea iacta est",
|
||||
&vec!["āl", "āle", "le", "lea", "ia", "iac", "ac", "act", "ct", "cta", "es", "est"],
|
||||
&["āl", "āle", "le", "lea", "ia", "iac", "ac", "act", "ct", "cta", "es", "est"],
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -727,7 +727,7 @@ mod tests {
|
|||
test_analyser(
|
||||
"DEFINE ANALYZER test TOKENIZERS blank,class FILTERS lowercase,edgengram(2,3);",
|
||||
"Ālea iacta est",
|
||||
&vec!["āl", "āle", "ia", "iac", "es", "est"],
|
||||
&["āl", "āle", "ia", "iac", "es", "est"],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -79,7 +79,7 @@ impl Analyzer {
|
|||
for tokens in &inputs {
|
||||
for token in tokens.list() {
|
||||
doc_length += 1;
|
||||
match terms.entry(tokens.get_token_string(&token)) {
|
||||
match terms.entry(tokens.get_token_string(token)) {
|
||||
Entry::Vacant(e) => {
|
||||
e.insert(1);
|
||||
}
|
||||
|
|
|
@ -111,7 +111,7 @@ impl Tokenizer {
|
|||
res
|
||||
}
|
||||
|
||||
pub(super) fn tokenize(t: &Vec<SqlTokenizer>, i: String) -> Tokens {
|
||||
pub(super) fn tokenize(t: &[SqlTokenizer], i: String) -> Tokens {
|
||||
let mut w = Tokenizer::new(t);
|
||||
let mut last_pos = 0;
|
||||
let mut current_pos = 0;
|
||||
|
|
|
@ -343,28 +343,24 @@ impl HitsIterator {
|
|||
&mut self,
|
||||
tx: &mut Transaction,
|
||||
) -> Result<Option<(Thing, Option<Score>)>, Error> {
|
||||
loop {
|
||||
if let Some(doc_id) = self.iter.next() {
|
||||
if let Some(doc_key) = self.doc_ids.get_doc_key(tx, doc_id).await? {
|
||||
let score = if let Some(scorer) = &self.scorer {
|
||||
let mut sc = 0.0;
|
||||
for (term_id, docs) in &self.terms_docs {
|
||||
if docs.contains(doc_id) {
|
||||
if let Some(term_freq) =
|
||||
self.postings.get_term_frequency(tx, *term_id, doc_id).await?
|
||||
{
|
||||
sc += scorer.score(tx, doc_id, docs.len(), term_freq).await?;
|
||||
}
|
||||
for doc_id in self.iter.by_ref() {
|
||||
if let Some(doc_key) = self.doc_ids.get_doc_key(tx, doc_id).await? {
|
||||
let score = if let Some(scorer) = &self.scorer {
|
||||
let mut sc = 0.0;
|
||||
for (term_id, docs) in &self.terms_docs {
|
||||
if docs.contains(doc_id) {
|
||||
if let Some(term_freq) =
|
||||
self.postings.get_term_frequency(tx, *term_id, doc_id).await?
|
||||
{
|
||||
sc += scorer.score(tx, doc_id, docs.len(), term_freq).await?;
|
||||
}
|
||||
}
|
||||
Some(sc)
|
||||
} else {
|
||||
None
|
||||
};
|
||||
return Ok(Some((doc_key.into(), score)));
|
||||
}
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
Some(sc)
|
||||
} else {
|
||||
None
|
||||
};
|
||||
return Ok(Some((doc_key.into(), score)));
|
||||
}
|
||||
}
|
||||
Ok(None)
|
||||
|
|
|
@ -47,18 +47,18 @@ impl Plan {
|
|||
}
|
||||
|
||||
pub(crate) fn explain(&self) -> Value {
|
||||
match &self.i {
|
||||
IndexOption {
|
||||
ix,
|
||||
v,
|
||||
op,
|
||||
..
|
||||
} => Value::Object(Object::from(HashMap::from([
|
||||
("index", Value::from(ix.name.0.to_owned())),
|
||||
("operator", Value::from(op.to_string())),
|
||||
("value", v.clone()),
|
||||
]))),
|
||||
}
|
||||
let IndexOption {
|
||||
ix,
|
||||
v,
|
||||
op,
|
||||
..
|
||||
} = &self.i;
|
||||
|
||||
Value::Object(Object::from(HashMap::from([
|
||||
("index", Value::from(ix.name.0.to_owned())),
|
||||
("operator", Value::from(op.to_string())),
|
||||
("value", v.clone()),
|
||||
])))
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -225,6 +225,7 @@ struct MatchesThingIterator {
|
|||
}
|
||||
|
||||
impl MatchesThingIterator {
|
||||
#[allow(clippy::too_many_arguments)]
|
||||
async fn new(
|
||||
opt: &Options,
|
||||
txn: &Transaction,
|
||||
|
|
|
@ -38,7 +38,7 @@ pub(super) enum Inner {
|
|||
#[cfg(feature = "kv-tikv")]
|
||||
TiKV(super::tikv::Datastore),
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
FDB(super::fdb::Datastore),
|
||||
FoundationDB(super::fdb::Datastore),
|
||||
}
|
||||
|
||||
impl fmt::Display for Datastore {
|
||||
|
@ -56,7 +56,7 @@ impl fmt::Display for Datastore {
|
|||
#[cfg(feature = "kv-tikv")]
|
||||
Inner::TiKV(_) => write!(f, "tikv"),
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Inner::FDB(_) => write!(f, "fdb"),
|
||||
Inner::FoundationDB(_) => write!(f, "fdb"),
|
||||
#[allow(unreachable_patterns)]
|
||||
_ => unreachable!(),
|
||||
}
|
||||
|
@ -191,7 +191,7 @@ impl Datastore {
|
|||
info!(target: LOG, "Connecting to kvs store at {}", path);
|
||||
let s = s.trim_start_matches("fdb://");
|
||||
let s = s.trim_start_matches("fdb:");
|
||||
let v = super::fdb::Datastore::new(s).await.map(Inner::FDB);
|
||||
let v = super::fdb::Datastore::new(s).await.map(Inner::FoundationDB);
|
||||
info!(target: LOG, "Connected to kvs store at {}", path);
|
||||
v
|
||||
}
|
||||
|
@ -259,9 +259,9 @@ impl Datastore {
|
|||
super::tx::Inner::TiKV(tx)
|
||||
}
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Inner::FDB(v) => {
|
||||
Inner::FoundationDB(v) => {
|
||||
let tx = v.transaction(write, lock).await?;
|
||||
super::tx::Inner::FDB(tx)
|
||||
super::tx::Inner::FoundationDB(tx)
|
||||
}
|
||||
#[allow(unreachable_patterns)]
|
||||
_ => unreachable!(),
|
||||
|
|
|
@ -139,7 +139,7 @@ impl Transaction {
|
|||
match r {
|
||||
Ok(_r) => {}
|
||||
Err(e) => {
|
||||
return Err(Error::Tx(format!("Transaction commit error: {}", e).to_string()));
|
||||
return Err(Error::Tx(format!("Transaction commit error: {}", e)));
|
||||
}
|
||||
}
|
||||
// Continue
|
||||
|
@ -167,7 +167,7 @@ impl Transaction {
|
|||
tx.get(key, self.snapshot())
|
||||
.await
|
||||
.map(|v| v.is_some())
|
||||
.map_err(|e| Error::Tx(format!("Unable to get kv from FDB: {}", e)))
|
||||
.map_err(|e| Error::Tx(format!("Unable to get kv from FoundationDB: {}", e)))
|
||||
}
|
||||
/// Fetch a key from the database
|
||||
pub async fn get<K>(&mut self, key: K) -> Result<Option<Val>, Error>
|
||||
|
@ -188,12 +188,10 @@ impl Transaction {
|
|||
// make the transaction serializable, we use the inverse of it to enable the snapshot isolation
|
||||
// on the get request.
|
||||
// See https://apple.github.io/foundationdb/api-c.html#snapshot-reads for more information on how the snapshot get is supposed to work in FDB.
|
||||
let res = tx
|
||||
.get(key, self.snapshot())
|
||||
tx.get(key, self.snapshot())
|
||||
.await
|
||||
.map(|v| v.as_ref().map(|v| Val::from(v.to_vec())))
|
||||
.map_err(|e| Error::Tx(format!("Unable to get kv from FDB: {}", e)));
|
||||
res
|
||||
.map(|v| v.as_ref().map(|v| v.to_vec()))
|
||||
.map_err(|e| Error::Tx(format!("Unable to get kv from FoundationDB: {}", e)))
|
||||
}
|
||||
/// Insert or update a key in the database
|
||||
pub async fn set<K, V>(&mut self, key: K, val: V) -> Result<(), Error>
|
||||
|
@ -288,9 +286,9 @@ impl Transaction {
|
|||
// on the get request.
|
||||
// See https://apple.github.io/foundationdb/api-c.html#snapshot-reads for more information on how the snapshot get is supposed to work in FDB.
|
||||
let res = tx.get(key, false).await;
|
||||
let res = res.map_err(|e| Error::Tx(format!("Unable to get kv from FDB: {}", e)));
|
||||
let res = res.map_err(|e| Error::Tx(format!("Unable to get kv from FoundationDB: {}", e)));
|
||||
match (res, chk) {
|
||||
(Ok(Some(v)), Some(w)) if Val::from(v.as_ref()) == w => tx.set(key, val),
|
||||
(Ok(Some(v)), Some(w)) if *v.as_ref() == w => tx.set(key, val),
|
||||
(Ok(None), None) => tx.set(key, val),
|
||||
(Err(e), _) => return Err(e),
|
||||
_ => return Err(Error::TxConditionNotMet),
|
||||
|
@ -341,9 +339,12 @@ impl Transaction {
|
|||
// Delete the key
|
||||
let tx = self.tx.lock().await;
|
||||
let tx = tx.as_ref().unwrap();
|
||||
let res = tx.get(key, false).await.map_err(|e| Error::Tx(format!("FDB tx failure: {}", e)));
|
||||
let res = tx
|
||||
.get(key, false)
|
||||
.await
|
||||
.map_err(|e| Error::Tx(format!("FoundationDB tx failure: {}", e)));
|
||||
match (res, chk) {
|
||||
(Ok(Some(v)), Some(w)) if Val::from(v.as_ref()) == w => tx.clear(key),
|
||||
(Ok(Some(v)), Some(w)) if *v.as_ref() == w => tx.clear(key),
|
||||
(Ok(None), None) => tx.clear(key),
|
||||
_ => return Err(Error::TxConditionNotMet),
|
||||
};
|
||||
|
@ -365,8 +366,8 @@ impl Transaction {
|
|||
end: rng.end.into(),
|
||||
};
|
||||
// Scan the keys
|
||||
let begin: Vec<u8> = rng.start.into();
|
||||
let end: Vec<u8> = rng.end.into();
|
||||
let begin: Vec<u8> = rng.start;
|
||||
let end: Vec<u8> = rng.end;
|
||||
let opt = foundationdb::RangeOption {
|
||||
limit: Some(limit.try_into().unwrap()),
|
||||
..foundationdb::RangeOption::from((begin.as_slice(), end.as_slice()))
|
||||
|
@ -388,9 +389,9 @@ impl Transaction {
|
|||
res.push(x)
|
||||
}
|
||||
Ok(None) => break,
|
||||
Err(e) => return Err(Error::Tx(format!("GetRanges failed: {}", e).to_string())),
|
||||
Err(e) => return Err(Error::Tx(format!("GetRanges failed: {}", e))),
|
||||
}
|
||||
}
|
||||
return Ok(res);
|
||||
Ok(res)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,9 +18,9 @@ async fn exi() {
|
|||
// Create a readonly transaction
|
||||
let mut tx = ds.transaction(false, false).await.unwrap();
|
||||
let val = tx.exi("test").await.unwrap();
|
||||
assert_eq!(val, true);
|
||||
assert!(val);
|
||||
let val = tx.exi("none").await.unwrap();
|
||||
assert_eq!(val, false);
|
||||
assert!(!val);
|
||||
tx.cancel().await.unwrap();
|
||||
}
|
||||
|
||||
|
|
|
@ -55,7 +55,7 @@ pub(super) enum Inner {
|
|||
#[cfg(feature = "kv-tikv")]
|
||||
TiKV(super::tikv::Transaction),
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
FDB(super::fdb::Transaction),
|
||||
FoundationDB(super::fdb::Transaction),
|
||||
}
|
||||
|
||||
impl fmt::Display for Transaction {
|
||||
|
@ -73,7 +73,7 @@ impl fmt::Display for Transaction {
|
|||
#[cfg(feature = "kv-tikv")]
|
||||
Inner::TiKV(_) => write!(f, "tikv"),
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Inner::FDB(_) => write!(f, "fdb"),
|
||||
Inner::FoundationDB(_) => write!(f, "fdb"),
|
||||
#[allow(unreachable_patterns)]
|
||||
_ => unreachable!(),
|
||||
}
|
||||
|
@ -122,7 +122,7 @@ impl Transaction {
|
|||
} => v.closed(),
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.closed(),
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -164,7 +164,7 @@ impl Transaction {
|
|||
} => v.cancel().await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.cancel().await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -206,7 +206,7 @@ impl Transaction {
|
|||
} => v.commit().await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.commit().await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -250,7 +250,7 @@ impl Transaction {
|
|||
} => v.del(key).await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.del(key).await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -294,7 +294,7 @@ impl Transaction {
|
|||
} => v.exi(key).await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.exi(key).await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -338,7 +338,7 @@ impl Transaction {
|
|||
} => v.get(key).await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.get(key).await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -383,7 +383,7 @@ impl Transaction {
|
|||
} => v.set(key, val).await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.set(key, val).await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -428,7 +428,7 @@ impl Transaction {
|
|||
} => v.put(key, val).await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.put(key, val).await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -474,7 +474,7 @@ impl Transaction {
|
|||
} => v.scan(rng, limit).await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.scan(rng, limit).await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -519,7 +519,7 @@ impl Transaction {
|
|||
} => v.putc(key, val, chk).await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.putc(key, val, chk).await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
@ -564,7 +564,7 @@ impl Transaction {
|
|||
} => v.delc(key, chk).await,
|
||||
#[cfg(feature = "kv-fdb")]
|
||||
Transaction {
|
||||
inner: Inner::FDB(v),
|
||||
inner: Inner::FoundationDB(v),
|
||||
..
|
||||
} => v.delc(key, chk).await,
|
||||
#[allow(unreachable_patterns)]
|
||||
|
|
|
@ -318,7 +318,7 @@ impl Number {
|
|||
match self {
|
||||
Number::Int(v) => Decimal::try_from(*v).unwrap_or_default(),
|
||||
Number::Float(v) => Decimal::try_from(*v).unwrap_or_default(),
|
||||
Number::Decimal(v) => v.clone(),
|
||||
Number::Decimal(v) => *v,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -235,7 +235,8 @@ pub fn phrases(i: &str) -> IResult<&str, Operator> {
|
|||
|
||||
pub fn matches(i: &str) -> IResult<&str, Operator> {
|
||||
let (i, _) = char('@')(i)?;
|
||||
let (i, reference) = opt(|i| uint8(i))(i)?;
|
||||
// let (i, reference) = opt(|i| uint8(i))(i)?;
|
||||
let (i, reference) = opt(uint8)(i)?;
|
||||
let (i, _) = char('@')(i)?;
|
||||
Ok((i, Operator::Matches(reference)))
|
||||
}
|
||||
|
|
|
@ -64,7 +64,7 @@ pub fn check_order_by_fields<'a>(
|
|||
if let Some(orders) = orders {
|
||||
// Loop over each of the expressions in the ORDER BY clause
|
||||
for order in orders.iter() {
|
||||
if !contains_idiom(fields, &*order) {
|
||||
if !contains_idiom(fields, order) {
|
||||
// If the expression isn't specified in the SELECT clause, then error
|
||||
return Err(Failure(Error::Order(i, order.to_string())));
|
||||
}
|
||||
|
@ -95,31 +95,28 @@ pub fn check_group_by_fields<'a>(
|
|||
// Loop over each of the expressions in the GROUP BY clause
|
||||
for group in groups.iter() {
|
||||
// Check to see whether the expression is in the GROUP BY clause or is an aggregate
|
||||
match field {
|
||||
Field::Single {
|
||||
expr,
|
||||
alias,
|
||||
} => {
|
||||
if alias.as_ref().map(|i| i.as_ref() == group.as_ref()).unwrap_or(false)
|
||||
{
|
||||
// This field is aliased, and the alias name matched
|
||||
continue 'outer;
|
||||
} else {
|
||||
match expr {
|
||||
// If the expression in the SELECT clause is a field, check to see if it exists in the GROUP BY
|
||||
Value::Idiom(i) if i == &group.0 => continue 'outer,
|
||||
// If the expression in the SELECT clause is a function, check to see if it is an aggregate function
|
||||
Value::Function(f) if f.is_aggregate() => continue 'outer,
|
||||
// Otherwise check if the expression itself exists in the GROUP BY clause
|
||||
v if v.to_idiom() == group.0 => continue 'outer,
|
||||
// Check if this is a static value which can be used in the GROUP BY clause
|
||||
v if v.is_static() => continue 'outer,
|
||||
// If not, then this query should fail
|
||||
_ => (),
|
||||
}
|
||||
if let Field::Single {
|
||||
expr,
|
||||
alias,
|
||||
} = field
|
||||
{
|
||||
if alias.as_ref().map(|i| i.as_ref() == group.as_ref()).unwrap_or(false) {
|
||||
// This field is aliased, and the alias name matched
|
||||
continue 'outer;
|
||||
} else {
|
||||
match expr {
|
||||
// If the expression in the SELECT clause is a field, check to see if it exists in the GROUP BY
|
||||
Value::Idiom(i) if i == &group.0 => continue 'outer,
|
||||
// If the expression in the SELECT clause is a function, check to see if it is an aggregate function
|
||||
Value::Function(f) if f.is_aggregate() => continue 'outer,
|
||||
// Otherwise check if the expression itself exists in the GROUP BY clause
|
||||
v if v.to_idiom() == group.0 => continue 'outer,
|
||||
// Check if this is a static value which can be used in the GROUP BY clause
|
||||
v if v.is_static() => continue 'outer,
|
||||
// If not, then this query should fail
|
||||
_ => (),
|
||||
}
|
||||
}
|
||||
_ => (),
|
||||
}
|
||||
}
|
||||
// If the expression isn't an aggregate function and isn't specified in the GROUP BY clause, then error
|
||||
|
|
|
@ -16,12 +16,12 @@ impl Value {
|
|||
if let Value::Strand(p) = o.value {
|
||||
if let Value::Strand(v) = self.pick(&o.path) {
|
||||
let dmp = dmp::new();
|
||||
let mut pch = dmp.patch_from_text(p.as_string()).map_err(|e| {
|
||||
let pch = dmp.patch_from_text(p.as_string()).map_err(|e| {
|
||||
Error::InvalidPatch {
|
||||
message: format!("{e:?}"),
|
||||
}
|
||||
})?;
|
||||
let (txt, _) = dmp.patch_apply(&mut pch, v.as_str()).map_err(|e| {
|
||||
let (txt, _) = dmp.patch_apply(&pch, v.as_str()).map_err(|e| {
|
||||
Error::InvalidPatch {
|
||||
message: format!("{e:?}"),
|
||||
}
|
||||
|
|
|
@ -63,7 +63,7 @@ impl serde::ser::SerializeTuple for SerializeDatetime {
|
|||
} else if self.nanos.is_none() {
|
||||
self.nanos = Some(value.serialize(ser::primitive::u32::Serializer.wrap())?);
|
||||
} else {
|
||||
return Err(Error::custom(format!("unexpected `Datetime` 3rd field`")));
|
||||
return Err(Error::custom("unexpected `Datetime` 3rd field`".to_string()));
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
|
|
|
@ -260,7 +260,7 @@ mod tests {
|
|||
|
||||
#[test]
|
||||
fn option() {
|
||||
let kind = Kind::Option(Box::new(Default::default()));
|
||||
let kind = Kind::Option(Box::default());
|
||||
let serialized = kind.serialize(Serializer.wrap()).unwrap();
|
||||
assert_eq!(kind, serialized);
|
||||
}
|
||||
|
@ -278,22 +278,22 @@ mod tests {
|
|||
|
||||
#[test]
|
||||
fn set() {
|
||||
let kind = Kind::Set(Box::new(Default::default()), None);
|
||||
let kind = Kind::Set(Box::default(), None);
|
||||
let serialized = kind.serialize(Serializer.wrap()).unwrap();
|
||||
assert_eq!(kind, serialized);
|
||||
|
||||
let kind = Kind::Set(Box::new(Default::default()), Some(Default::default()));
|
||||
let kind = Kind::Set(Box::default(), Some(Default::default()));
|
||||
let serialized = kind.serialize(Serializer.wrap()).unwrap();
|
||||
assert_eq!(kind, serialized);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn array() {
|
||||
let kind = Kind::Array(Box::new(Default::default()), None);
|
||||
let kind = Kind::Array(Box::default(), None);
|
||||
let serialized = kind.serialize(Serializer.wrap()).unwrap();
|
||||
assert_eq!(kind, serialized);
|
||||
|
||||
let kind = Kind::Array(Box::new(Default::default()), Some(Default::default()));
|
||||
let kind = Kind::Array(Box::default(), Some(Default::default()));
|
||||
let serialized = kind.serialize(Serializer.wrap()).unwrap();
|
||||
assert_eq!(kind, serialized);
|
||||
}
|
||||
|
|
|
@ -563,7 +563,7 @@ mod tests {
|
|||
#[test]
|
||||
fn none() {
|
||||
let expected = Value::None;
|
||||
assert_eq!(expected, to_value(&None::<u32>).unwrap());
|
||||
assert_eq!(expected, to_value(None::<u32>).unwrap());
|
||||
assert_eq!(expected, to_value(&expected).unwrap());
|
||||
}
|
||||
|
||||
|
@ -576,14 +576,14 @@ mod tests {
|
|||
#[test]
|
||||
fn r#false() {
|
||||
let expected = Value::Bool(false);
|
||||
assert_eq!(expected, to_value(&false).unwrap());
|
||||
assert_eq!(expected, to_value(false).unwrap());
|
||||
assert_eq!(expected, to_value(&expected).unwrap());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn r#true() {
|
||||
let expected = Value::Bool(true);
|
||||
assert_eq!(expected, to_value(&true).unwrap());
|
||||
assert_eq!(expected, to_value(true).unwrap());
|
||||
assert_eq!(expected, to_value(&expected).unwrap());
|
||||
}
|
||||
|
||||
|
@ -623,7 +623,7 @@ mod tests {
|
|||
assert_eq!(expected, to_value(&expected).unwrap());
|
||||
|
||||
let strand = "foobar";
|
||||
let value = to_value(&strand).unwrap();
|
||||
let value = to_value(strand).unwrap();
|
||||
let expected = Value::Strand(Strand(strand.to_owned()));
|
||||
assert_eq!(value, expected);
|
||||
assert_eq!(expected, to_value(&expected).unwrap());
|
||||
|
@ -748,7 +748,7 @@ mod tests {
|
|||
|
||||
#[test]
|
||||
fn block() {
|
||||
let block = Box::new(Block::default());
|
||||
let block = Box::default();
|
||||
let value = to_value(&block).unwrap();
|
||||
let expected = Value::Block(block);
|
||||
assert_eq!(value, expected);
|
||||
|
@ -850,7 +850,7 @@ mod tests {
|
|||
bar,
|
||||
foo: foo.to_owned(),
|
||||
};
|
||||
let value = to_value(&foo_bar).unwrap();
|
||||
let value = to_value(foo_bar).unwrap();
|
||||
let expected = Value::Object(
|
||||
map! {
|
||||
"foo".to_owned() => foo.into(),
|
||||
|
|
|
@ -2830,52 +2830,52 @@ mod tests {
|
|||
|
||||
#[test]
|
||||
fn check_none() {
|
||||
assert_eq!(true, Value::None.is_none());
|
||||
assert_eq!(false, Value::Null.is_none());
|
||||
assert_eq!(false, Value::from(1).is_none());
|
||||
assert!(Value::None.is_none());
|
||||
assert!(!Value::Null.is_none());
|
||||
assert!(!Value::from(1).is_none());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn check_null() {
|
||||
assert_eq!(true, Value::Null.is_null());
|
||||
assert_eq!(false, Value::None.is_null());
|
||||
assert_eq!(false, Value::from(1).is_null());
|
||||
assert!(Value::Null.is_null());
|
||||
assert!(!Value::None.is_null());
|
||||
assert!(!Value::from(1).is_null());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn check_true() {
|
||||
assert_eq!(false, Value::None.is_true());
|
||||
assert_eq!(true, Value::Bool(true).is_true());
|
||||
assert_eq!(false, Value::Bool(false).is_true());
|
||||
assert_eq!(false, Value::from(1).is_true());
|
||||
assert_eq!(false, Value::from("something").is_true());
|
||||
assert!(!Value::None.is_true());
|
||||
assert!(Value::Bool(true).is_true());
|
||||
assert!(!Value::Bool(false).is_true());
|
||||
assert!(!Value::from(1).is_true());
|
||||
assert!(!Value::from("something").is_true());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn check_false() {
|
||||
assert_eq!(false, Value::None.is_false());
|
||||
assert_eq!(false, Value::Bool(true).is_false());
|
||||
assert_eq!(true, Value::Bool(false).is_false());
|
||||
assert_eq!(false, Value::from(1).is_false());
|
||||
assert_eq!(false, Value::from("something").is_false());
|
||||
assert!(!Value::None.is_false());
|
||||
assert!(!Value::Bool(true).is_false());
|
||||
assert!(Value::Bool(false).is_false());
|
||||
assert!(!Value::from(1).is_false());
|
||||
assert!(!Value::from("something").is_false());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn convert_truthy() {
|
||||
assert_eq!(false, Value::None.is_truthy());
|
||||
assert_eq!(false, Value::Null.is_truthy());
|
||||
assert_eq!(true, Value::Bool(true).is_truthy());
|
||||
assert_eq!(false, Value::Bool(false).is_truthy());
|
||||
assert_eq!(false, Value::from(0).is_truthy());
|
||||
assert_eq!(true, Value::from(1).is_truthy());
|
||||
assert_eq!(true, Value::from(-1).is_truthy());
|
||||
assert_eq!(true, Value::from(1.1).is_truthy());
|
||||
assert_eq!(true, Value::from(-1.1).is_truthy());
|
||||
assert_eq!(true, Value::from("true").is_truthy());
|
||||
assert_eq!(false, Value::from("false").is_truthy());
|
||||
assert_eq!(true, Value::from("falsey").is_truthy());
|
||||
assert_eq!(true, Value::from("something").is_truthy());
|
||||
assert_eq!(true, Value::from(Uuid::new()).is_truthy());
|
||||
assert!(!Value::None.is_truthy());
|
||||
assert!(!Value::Null.is_truthy());
|
||||
assert!(Value::Bool(true).is_truthy());
|
||||
assert!(!Value::Bool(false).is_truthy());
|
||||
assert!(!Value::from(0).is_truthy());
|
||||
assert!(Value::from(1).is_truthy());
|
||||
assert!(Value::from(-1).is_truthy());
|
||||
assert!(Value::from(1.1).is_truthy());
|
||||
assert!(Value::from(-1.1).is_truthy());
|
||||
assert!(Value::from("true").is_truthy());
|
||||
assert!(!Value::from("false").is_truthy());
|
||||
assert!(Value::from("falsey").is_truthy());
|
||||
assert!(Value::from("something").is_truthy());
|
||||
assert!(Value::from(Uuid::new()).is_truthy());
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
|
|
@ -17,7 +17,7 @@ async fn clear_transaction_cache_table() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 4);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -73,7 +73,7 @@ async fn clear_transaction_cache_field() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 6);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
|
@ -19,7 +19,7 @@ async fn compare_empty() -> Result<(), Error> {
|
|||
"#;
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 9);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -203,7 +203,7 @@ async fn run_queries(
|
|||
> {
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
dbs.execute(&sql, &ses, None, false).await.map(|v| v.into_iter().map(|res| res.result))
|
||||
dbs.execute(sql, &ses, None, false).await.map(|v| v.into_iter().map(|res| res.result))
|
||||
}
|
||||
|
||||
fn with_enough_stack(
|
||||
|
|
|
@ -18,7 +18,7 @@ async fn create_with_id() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -14,7 +14,7 @@ async fn datetimes_conversion() -> Result<(), Error> {
|
|||
"#;
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -14,7 +14,7 @@ async fn define_statement_namespace() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -39,7 +39,7 @@ async fn define_statement_database() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -68,7 +68,7 @@ async fn define_statement_function() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -101,7 +101,7 @@ async fn define_statement_table_drop() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -132,7 +132,7 @@ async fn define_statement_table_schemaless() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -164,7 +164,7 @@ async fn define_statement_table_schemafull() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -198,7 +198,7 @@ async fn define_statement_table_schemaful() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -238,7 +238,7 @@ async fn define_statement_event() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -295,7 +295,7 @@ async fn define_statement_event_when_event() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -352,7 +352,7 @@ async fn define_statement_event_when_logic() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -401,7 +401,7 @@ async fn define_statement_field() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -433,7 +433,7 @@ async fn define_statement_field_type() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -465,7 +465,7 @@ async fn define_statement_field_value() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -497,7 +497,7 @@ async fn define_statement_field_assert() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -529,7 +529,7 @@ async fn define_statement_field_type_value_assert() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -565,7 +565,7 @@ async fn define_statement_index_single_simple() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -613,7 +613,7 @@ async fn define_statement_index_single() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -657,7 +657,7 @@ async fn define_statement_index_multiple() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -709,7 +709,7 @@ async fn define_statement_index_single_unique() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -767,7 +767,7 @@ async fn define_statement_index_multiple_unique() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 12);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -842,7 +842,7 @@ async fn define_statement_index_single_unique_existing() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 6);
|
||||
//
|
||||
for _ in 0..3 {
|
||||
|
@ -889,7 +889,7 @@ async fn define_statement_index_multiple_unique_existing() -> Result<(), Error>
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
for _ in 0..4 {
|
||||
|
@ -933,7 +933,7 @@ async fn define_statement_analyzer() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -977,7 +977,7 @@ async fn define_statement_search_index() -> Result<(), Error> {
|
|||
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 8);
|
||||
//
|
||||
for i in 0..6 {
|
||||
|
|
|
@ -18,7 +18,7 @@ async fn complex_ids() -> Result<(), Error> {
|
|||
"#;
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -96,7 +96,7 @@ async fn complex_strings() -> Result<(), Error> {
|
|||
"#;
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -23,7 +23,7 @@ async fn create_relate_select() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 12);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -20,7 +20,7 @@ async fn field_definition_value_assert_failure() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 9);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -103,7 +103,7 @@ async fn field_definition_value_assert_success() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -152,7 +152,7 @@ async fn field_definition_empty_nested_objects() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 4);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -206,7 +206,7 @@ async fn field_definition_empty_nested_arrays() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 4);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -258,7 +258,7 @@ async fn field_definition_empty_nested_flexible() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 4);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -14,7 +14,7 @@ async fn future_function_simple() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -46,7 +46,7 @@ async fn future_function_arguments() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -13,7 +13,7 @@ async fn geometry_point() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -70,7 +70,7 @@ async fn geometry_polygon() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -163,7 +163,7 @@ async fn geometry_multipoint() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -241,7 +241,7 @@ async fn geometry_multipolygon() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -22,7 +22,7 @@ async fn select_limit_fetch() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 11);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -246,7 +246,7 @@ async fn select_multi_aggregate() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 6);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -351,7 +351,7 @@ async fn select_multi_aggregate_composed() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -16,7 +16,7 @@ async fn insert_statement_object_single() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -44,7 +44,7 @@ async fn insert_statement_object_multiple() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -66,7 +66,7 @@ async fn insert_statement_values_single() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -83,7 +83,7 @@ async fn insert_statement_values_multiple() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -105,7 +105,7 @@ async fn insert_statement_values_retable_id() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -128,7 +128,7 @@ async fn insert_statement_on_duplicate_key() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -149,7 +149,7 @@ async fn insert_statement_output() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -17,7 +17,7 @@ async fn select_limit_fetch() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 6);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -15,7 +15,7 @@ async fn select_where_matches_using_index() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 4);
|
||||
//
|
||||
let _ = res.remove(0).result?;
|
||||
|
@ -61,7 +61,7 @@ async fn select_where_matches_without_using_index_iterator() -> Result<(), Error
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let _ = res.remove(0).result?;
|
||||
|
|
|
@ -19,7 +19,7 @@ async fn merge_record() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -13,7 +13,7 @@ async fn model_count() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -38,7 +38,7 @@ async fn model_range() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
|
@ -16,7 +16,7 @@ async fn define_global_param() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -59,7 +59,7 @@ async fn define_protected_param() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
|
@ -14,7 +14,7 @@ async fn relate_with_parameters() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -51,7 +51,7 @@ async fn relate_and_overwrite() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -15,7 +15,7 @@ async fn remove_statement_table() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -49,7 +49,7 @@ async fn remove_statement_analyzer() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
// Analyzer is defined
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
|
@ -19,7 +19,7 @@ async fn script_function_error() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 2);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -46,7 +46,7 @@ async fn script_function_simple() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -75,7 +75,7 @@ async fn script_function_context() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -109,7 +109,7 @@ async fn script_function_arguments() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -152,7 +152,7 @@ async fn script_function_types() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -182,7 +182,7 @@ async fn script_function_module_os() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 1);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
|
@ -15,7 +15,7 @@ async fn select_field_value() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 4);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -77,7 +77,7 @@ async fn select_writeable_subqueries() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 6);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -121,7 +121,7 @@ async fn select_where_field_is_bool() -> Result<(), Error> {
|
|||
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 6);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -209,7 +209,7 @@ async fn select_where_and_with_index() -> Result<(), Error> {
|
|||
SELECT name FROM person WHERE name = 'Tobie' AND genre = 'm' EXPLAIN;";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 4);
|
||||
//
|
||||
let _ = res.remove(0).result?;
|
||||
|
@ -253,7 +253,7 @@ async fn select_where_and_with_unique_index() -> Result<(), Error> {
|
|||
SELECT name FROM person WHERE name = 'Jaime' AND genre = 'm' EXPLAIN;";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 4);
|
||||
//
|
||||
let _ = res.remove(0).result?;
|
||||
|
@ -298,7 +298,7 @@ async fn select_where_and_with_fulltext_index() -> Result<(), Error> {
|
|||
SELECT name FROM person WHERE name @@ 'Jaime' AND genre = 'm' EXPLAIN;";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let _ = res.remove(0).result?;
|
||||
|
|
|
@ -17,7 +17,7 @@ async fn strict_mode_no_namespace() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, true).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, true).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -75,7 +75,7 @@ async fn strict_mode_no_database() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, true).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, true).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -128,7 +128,7 @@ async fn strict_mode_no_table() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, true).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, true).await?;
|
||||
assert_eq!(res.len(), 5);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -176,7 +176,7 @@ async fn strict_mode_all_ok() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, true).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, true).await?;
|
||||
assert_eq!(res.len(), 6);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -215,7 +215,7 @@ async fn loose_mode_all_ok() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
|
@ -25,7 +25,7 @@ async fn subquery_select() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -137,7 +137,7 @@ async fn subquery_ifelse_set() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 9);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -252,7 +252,7 @@ async fn subquery_ifelse_array() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 9);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
|
@ -28,7 +28,7 @@ async fn define_foreign_table() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 9);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
|
@ -20,7 +20,7 @@ async fn strict_typing_inline() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 9);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -136,7 +136,7 @@ async fn strict_typing_defined() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 8);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
|
@ -31,7 +31,7 @@ async fn update_simple_with_input() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 7);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
@ -111,7 +111,7 @@ async fn update_complex_with_input() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result;
|
||||
|
|
|
@ -14,7 +14,7 @@ async fn use_statement_set_ns() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -40,7 +40,7 @@ async fn use_statement_set_db() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
@ -66,7 +66,7 @@ async fn use_statement_set_both() -> Result<(), Error> {
|
|||
";
|
||||
let dbs = Datastore::new("memory").await?;
|
||||
let ses = Session::for_kv().with_ns("test").with_db("test");
|
||||
let res = &mut dbs.execute(&sql, &ses, None, false).await?;
|
||||
let res = &mut dbs.execute(sql, &ses, None, false).await?;
|
||||
assert_eq!(res.len(), 3);
|
||||
//
|
||||
let tmp = res.remove(0).result?;
|
||||
|
|
Loading…
Reference in a new issue