Skip to content

Commit

Permalink
fix ordering on CRDB & refactor sql builder
Browse files Browse the repository at this point in the history
  • Loading branch information
Weakky committed Nov 30, 2023
1 parent a8d6139 commit 8180e75
Show file tree
Hide file tree
Showing 4 changed files with 260 additions and 177 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,11 @@ mod one_relation {
@r###"{"data":{"findManyBlog":[{"name":"blog 1","post":{"title":"post 1","comment":{"text":"comment 1"}}},{"name":"blog 2","post":null},{"name":"blog 3","post":null}]}}"###
);

insta::assert_snapshot!(
run_query!(&runner, r#"query { findManyBlog { name, post(where: { title: "post 1", comment: { is: { text: "comment 1" } } }) { title } }}"#),
@r###"{"data":{"findManyBlog":[{"name":"blog 1","post":{"title":"post 1"}},{"name":"blog 2","post":null},{"name":"blog 3","post":null}]}}"###
);

Ok(())
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -357,7 +357,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{t, middles(take: -1, orderBy: { id: asc }){m}}
findManyTop(orderBy: {t: asc}){t, middles(take: -1, orderBy: { id: asc }){m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T1","middles":[{"m":"M13"}]},{"t":"T2","middles":[{"m":"M23"}]},{"t":"T3","middles":[{"m":"M33"}]}]}}"###
);
Expand All @@ -372,7 +372,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{t, middles(take: -3, orderBy: { id: asc }) {m}}
findManyTop(orderBy: {t: asc}){t, middles(take: -3, orderBy: { id: asc }) {m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T1","middles":[{"m":"M11"},{"m":"M12"},{"m":"M13"}]},{"t":"T2","middles":[{"m":"M21"},{"m":"M22"},{"m":"M23"}]},{"t":"T3","middles":[{"m":"M31"},{"m":"M32"},{"m":"M33"}]}]}}"###
);
Expand All @@ -387,7 +387,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{t, middles(take: -4, orderBy: { id: asc }) {m}}
findManyTop(orderBy: {t: asc}){t, middles(take: -4, orderBy: { id: asc }) {m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T1","middles":[{"m":"M11"},{"m":"M12"},{"m":"M13"}]},{"t":"T2","middles":[{"m":"M21"},{"m":"M22"},{"m":"M23"}]},{"t":"T3","middles":[{"m":"M31"},{"m":"M32"},{"m":"M33"}]}]}}"###
);
Expand All @@ -402,7 +402,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{middles{bottoms(take: -1, orderBy: { id: asc }){b}}}
findManyTop{middles(orderBy: {m: asc}){bottoms(take: -1, orderBy: { id: asc }){b}}}
}"#),
@r###"{"data":{"findManyTop":[{"middles":[{"bottoms":[{"b":"B113"}]},{"bottoms":[{"b":"B123"}]},{"bottoms":[{"b":"B133"}]}]},{"middles":[{"bottoms":[{"b":"B213"}]},{"bottoms":[{"b":"B223"}]},{"bottoms":[{"b":"B233"}]}]},{"middles":[{"bottoms":[{"b":"B313"}]},{"bottoms":[{"b":"B323"}]},{"bottoms":[{"b":"B333"}]}]}]}}"###
);
Expand All @@ -417,7 +417,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{middles{bottoms(take: -3, orderBy: { id: asc }){b}}}
findManyTop{middles(orderBy: {m: asc}){bottoms(take: -3, orderBy: { id: asc }){b}}}
}"#),
@r###"{"data":{"findManyTop":[{"middles":[{"bottoms":[{"b":"B111"},{"b":"B112"},{"b":"B113"}]},{"bottoms":[{"b":"B121"},{"b":"B122"},{"b":"B123"}]},{"bottoms":[{"b":"B131"},{"b":"B132"},{"b":"B133"}]}]},{"middles":[{"bottoms":[{"b":"B211"},{"b":"B212"},{"b":"B213"}]},{"bottoms":[{"b":"B221"},{"b":"B222"},{"b":"B223"}]},{"bottoms":[{"b":"B231"},{"b":"B232"},{"b":"B233"}]}]},{"middles":[{"bottoms":[{"b":"B311"},{"b":"B312"},{"b":"B313"}]},{"bottoms":[{"b":"B321"},{"b":"B322"},{"b":"B323"}]},{"bottoms":[{"b":"B331"},{"b":"B332"},{"b":"B333"}]}]}]}}"###
);
Expand All @@ -432,7 +432,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{middles{bottoms(take: -4, orderBy: { id: asc }){b}}}
findManyTop{middles(orderBy: {m: asc}){bottoms(take: -4, orderBy: { id: asc }){b}}}
}"#),
@r###"{"data":{"findManyTop":[{"middles":[{"bottoms":[{"b":"B111"},{"b":"B112"},{"b":"B113"}]},{"bottoms":[{"b":"B121"},{"b":"B122"},{"b":"B123"}]},{"bottoms":[{"b":"B131"},{"b":"B132"},{"b":"B133"}]}]},{"middles":[{"bottoms":[{"b":"B211"},{"b":"B212"},{"b":"B213"}]},{"bottoms":[{"b":"B221"},{"b":"B222"},{"b":"B223"}]},{"bottoms":[{"b":"B231"},{"b":"B232"},{"b":"B233"}]}]},{"middles":[{"bottoms":[{"b":"B311"},{"b":"B312"},{"b":"B313"}]},{"bottoms":[{"b":"B321"},{"b":"B322"},{"b":"B323"}]},{"bottoms":[{"b":"B331"},{"b":"B332"},{"b":"B333"}]}]}]}}"###
);
Expand All @@ -451,7 +451,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop(skip: 1, take: 1){t, middles{m}}
findManyTop(skip: 1, take: 1){t, middles(orderBy: { m: asc }){m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T2","middles":[{"m":"M21"},{"m":"M22"},{"m":"M23"}]}]}}"###
);
Expand All @@ -466,7 +466,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop(skip: 1, take: 3){t, middles{m}}
findManyTop(skip: 1, take: 3){t, middles(orderBy: { m: asc }){m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T2","middles":[{"m":"M21"},{"m":"M22"},{"m":"M23"}]},{"t":"T3","middles":[{"m":"M31"},{"m":"M32"},{"m":"M33"}]}]}}"###
);
Expand Down Expand Up @@ -511,7 +511,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop(skip: 1, take: -3, orderBy: { id: asc }){t, middles{m}}
findManyTop(skip: 1, take: -3, orderBy: { id: asc }){t, middles(orderBy: { m: asc }){m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T1","middles":[{"m":"M11"},{"m":"M12"},{"m":"M13"}]},{"t":"T2","middles":[{"m":"M21"},{"m":"M22"},{"m":"M23"}]}]}}"###
);
Expand All @@ -526,7 +526,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{t, middles(skip: 1, take: -1, orderBy: { id: asc }){m}}
findManyTop(orderBy: { t: asc }){t, middles(skip: 1, take: -1, orderBy: { id: asc }){m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T1","middles":[{"m":"M12"}]},{"t":"T2","middles":[{"m":"M22"}]},{"t":"T3","middles":[{"m":"M32"}]}]}}"###
);
Expand All @@ -541,7 +541,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{t, middles(skip: 1, take: -3, orderBy: { id: asc }){m}}
findManyTop(orderBy: { t: asc }){t, middles(skip: 1, take: -3, orderBy: { id: asc }){m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T1","middles":[{"m":"M11"},{"m":"M12"}]},{"t":"T2","middles":[{"m":"M21"},{"m":"M22"}]},{"t":"T3","middles":[{"m":"M31"},{"m":"M32"}]}]}}"###
);
Expand All @@ -560,7 +560,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{t, middles(orderBy: { m: desc }, take: 1){m}}
findManyTop(orderBy: { t: asc }){t, middles(orderBy: { m: desc }, take: 1){m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T1","middles":[{"m":"M13"}]},{"t":"T2","middles":[{"m":"M23"}]},{"t":"T3","middles":[{"m":"M33"}]}]}}"###
);
Expand All @@ -575,7 +575,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyTop{t, middles(orderBy: { m: desc }, take: 3){m}}
findManyTop(orderBy: { t: asc }){t, middles(orderBy: { m: desc }, take: 3){m}}
}"#),
@r###"{"data":{"findManyTop":[{"t":"T1","middles":[{"m":"M13"},{"m":"M12"},{"m":"M11"}]},{"t":"T2","middles":[{"m":"M23"},{"m":"M22"},{"m":"M21"}]},{"t":"T3","middles":[{"m":"M33"},{"m":"M32"},{"m":"M31"}]}]}}"###
);
Expand Down Expand Up @@ -885,7 +885,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyModelA {
findManyModelA(orderBy: { id: asc }) {
id
manyB(skip: 1) {
id
Expand All @@ -909,7 +909,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyModelA {
findManyModelA(orderBy: { id: asc }) {
id
manyB(skip: 1, take: 2) {
id
Expand All @@ -933,7 +933,7 @@ mod nested_pagination {

insta::assert_snapshot!(
run_query!(&runner, r#"{
findManyModelA {
findManyModelA(orderBy: { id: asc }) {
id
manyB(skip: 1, take: -2, orderBy: { id: asc }) {
id
Expand Down
Loading

0 comments on commit 8180e75

Please sign in to comment.