use crate::util::*;
testcase!(test);
fn test(mut glue: multisql::Glue) {
make_basic_table!(glue);
assert_select!(glue, r#"
WITH cte AS (
SELECT
a
FROM
basic
)
SELECT
a
FROM
cte
"# => a = I64: (1));
assert_select!(glue, r#"
WITH cte_0 AS (
SELECT
a
FROM
basic
), cte_1 AS (
SELECT
a
FROM
cte_0
)
SELECT
a
FROM
cte_1
"# => a = I64: (1));
glue.execute("CREATE TABLE basic_insert (a INTEGER)")
.unwrap();
assert_select!(glue, r#"
WITH basic_inserted AS (
INSERT INTO basic_insert
SELECT
a
FROM
basic
)
SELECT
a
FROM
basic_inserted
"# => a = I64: (1));
assert_select!(glue, r#"
SELECT
a
FROM
basic_insert
"# => a = I64: (1));
}