From e63b80d6b5f5c630413a4232fe375f32b50fdd10 Mon Sep 17 00:00:00 2001 From: Igor Tomic Date: Wed, 5 Mar 2025 21:24:41 +0100 Subject: [PATCH 1/2] fix(qe): Change Array(None) to return Null value. --- query-engine/connectors/sql-query-connector/src/row.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/query-engine/connectors/sql-query-connector/src/row.rs b/query-engine/connectors/sql-query-connector/src/row.rs index bb18ae623a36..eae5b01cdc55 100644 --- a/query-engine/connectors/sql-query-connector/src/row.rs +++ b/query-engine/connectors/sql-query-connector/src/row.rs @@ -95,8 +95,8 @@ impl ToSqlRow for ResultRow { for (i, p_value) in self.into_iter().enumerate().take(row_width) { let pv = match (meta[i].identifier(), meta[i].arity()) { (type_identifier, FieldArity::List) => match p_value.typed { - value if value.is_null() => Ok(PrismaValue::List(Vec::new())), - ValueType::Array(None) => Ok(PrismaValue::List(Vec::new())), + value if value.is_null() => Ok(PrismaValue::Null), + ValueType::Array(None) => Ok(PrismaValue::Null), ValueType::Array(Some(l)) => l .into_iter() .map(|val| row_value_to_prisma_value(val, meta[i])) From 240538e7ab8f8e8bdbec7489dcb3ff65136820e0 Mon Sep 17 00:00:00 2001 From: Igor Tomic Date: Thu, 6 Mar 2025 19:54:45 +0100 Subject: [PATCH 2/2] fix(qe): Change test assertions. --- .../query-engine-tests/tests/queries/data_types/json.rs | 2 +- .../tests/queries/data_types/through_relation.rs | 2 +- .../tests/writes/top_level_mutations/create_list.rs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/query-engine/connector-test-kit-rs/query-engine-tests/tests/queries/data_types/json.rs b/query-engine/connector-test-kit-rs/query-engine-tests/tests/queries/data_types/json.rs index 3e6a31b82d9f..127a9bfed777 100644 --- a/query-engine/connector-test-kit-rs/query-engine-tests/tests/queries/data_types/json.rs +++ b/query-engine/connector-test-kit-rs/query-engine-tests/tests/queries/data_types/json.rs @@ -380,7 +380,7 @@ mod json { insta::assert_snapshot!( run_query!(&runner, r#"{ findManyTestModel { child { json_list } } }"#), - @r###"{"data":{"findManyTestModel":[{"child":{"json_list":["1","2"]}},{"child":{"json_list":["{}"]}},{"child":{"json_list":["\"hello\"","\"world\""]}},{"child":{"json_list":[]}}]}}"### + @r###"{"data":{"findManyTestModel":[{"child":{"json_list":["1","2"]}},{"child":{"json_list":["{}"]}},{"child":{"json_list":["\"hello\"","\"world\""]}},{"child":{"json_list":null}}]}}"### ); Ok(()) diff --git a/query-engine/connector-test-kit-rs/query-engine-tests/tests/queries/data_types/through_relation.rs b/query-engine/connector-test-kit-rs/query-engine-tests/tests/queries/data_types/through_relation.rs index 361953644395..f347ee131d39 100644 --- a/query-engine/connector-test-kit-rs/query-engine-tests/tests/queries/data_types/through_relation.rs +++ b/query-engine/connector-test-kit-rs/query-engine-tests/tests/queries/data_types/through_relation.rs @@ -265,7 +265,7 @@ mod scalar_relations { insta::assert_snapshot!( run_query!(&runner, r#"{ findManyParent { id children { childId string int bInt float bytes bool dt empty unset } } }"#), - @r###"{"data":{"findManyParent":[{"id":1,"children":[{"childId":1,"string":["abc","def"],"int":[1,-1,1234567],"bInt":["1","-1","9223372036854775807","-9223372036854775807"],"float":[1.5,-1.5,1.234567],"bytes":["AQID","Qk9OSk9VUg=="],"bool":[false,true],"dt":["1900-10-10T01:10:10.001Z","1999-12-12T21:12:12.121Z"],"empty":[],"unset":[]}]}]}}"### + @r###"{"data":{"findManyParent":[{"id":1,"children":[{"childId":1,"string":["abc","def"],"int":[1,-1,1234567],"bInt":["1","-1","9223372036854775807","-9223372036854775807"],"float":[1.5,-1.5,1.234567],"bytes":["AQID","Qk9OSk9VUg=="],"bool":[false,true],"dt":["1900-10-10T01:10:10.001Z","1999-12-12T21:12:12.121Z"],"empty":[],"unset":null}]}]}}"### ); insta::assert_snapshot!( diff --git a/query-engine/connector-test-kit-rs/query-engine-tests/tests/writes/top_level_mutations/create_list.rs b/query-engine/connector-test-kit-rs/query-engine-tests/tests/writes/top_level_mutations/create_list.rs index b42a6e8577f0..dc6faa5adae0 100644 --- a/query-engine/connector-test-kit-rs/query-engine-tests/tests/writes/top_level_mutations/create_list.rs +++ b/query-engine/connector-test-kit-rs/query-engine-tests/tests/writes/top_level_mutations/create_list.rs @@ -27,7 +27,7 @@ mod create_list { insta::assert_snapshot!( run_query!(&runner, r#"mutation { createOneUser(data: { id: 1 }){ id, test }}"#), - @r###"{"data":{"createOneUser":{"id":1,"test":[]}}}"### + @r###"{"data":{"createOneUser":{"id":1,"test":null}}}"### ); Ok(())