@@ -623,6 +623,10 @@ Y_UNIT_TEST_SUITE(KqpParams) {
623623 .AddParam (" $ParamTzDate" ).TzDate (" 2022-03-14,GMT" ).Build ()
624624 .AddParam (" $ParamTzDateTime" ).TzDatetime (" 2022-03-14T00:00:00,GMT" ).Build ()
625625 .AddParam (" $ParamTzTimestamp" ).TzTimestamp (" 2022-03-14T00:00:00.123,GMT" ).Build ()
626+ .AddParam (" $ParamDate32" ).Date32 (-17158 ).Build ()
627+ .AddParam (" $ParamDatetime64" ).Datetime64 (TInstant::ParseIso8601 (" 2020-01-11 15:04:53" ).Seconds ()).Build ()
628+ .AddParam (" $ParamTimestamp64" ).Timestamp64 (TInstant::ParseIso8601 (" 2020-01-12 21:18:37" ).MicroSeconds ()).Build ()
629+ .AddParam (" $ParamInterval64" ).Interval64 (3600 ).Build ()
626630 .AddParam (" $ParamOpt" ).OptionalString (" Opt" ).Build ()
627631 .AddParam (" $ParamTuple" )
628632 .BeginTuple ()
@@ -685,6 +689,10 @@ Y_UNIT_TEST_SUITE(KqpParams) {
685689 DECLARE $ParamTzDate AS TzDate;
686690 DECLARE $ParamTzDateTime AS TzDateTime;
687691 DECLARE $ParamTzTimestamp AS TzTimestamp;
692+ DECLARE $ParamDate32 AS Date32;
693+ DECLARE $ParamDatetime64 AS Datetime64;
694+ DECLARE $ParamTimestamp64 AS Timestamp64;
695+ DECLARE $ParamInterval64 AS Interval64;
688696 DECLARE $ParamOpt AS String?;
689697 DECLARE $ParamTuple AS Tuple<Utf8, Int32>;
690698 DECLARE $ParamList AS List<Uint64>;
@@ -717,6 +725,10 @@ Y_UNIT_TEST_SUITE(KqpParams) {
717725 $ParamDatetime AS ValueDatetime,
718726 $ParamTimestamp AS ValueTimestamp,
719727 $ParamInterval AS ValueInterval,
728+ $ParamDate32 AS ValueDate32,
729+ $ParamDatetime64 AS ValueDatetime64,
730+ $ParamTimestamp64 AS ValueTimestamp64,
731+ $ParamInterval64 AS ValueInterval64,
720732 $ParamTzDate AS ValueTzDate,
721733 $ParamTzDateTime AS ValueTzDateTime,
722734 $ParamTzTimestamp AS ValueTzTimestamp,
@@ -726,20 +738,19 @@ Y_UNIT_TEST_SUITE(KqpParams) {
726738 $ParamEmptyList AS ValueEmptyList,
727739 $ParamStruct AS ValueStruct,
728740 $ParamDict AS ValueDict;
729- )" ), TTxControl::BeginTx (TTxSettings::SerializableRW ()).CommitTx (), params).ExtractValueSync ();
730-
741+ )" ), TTxControl::BeginTx ().CommitTx (), params).ExtractValueSync ();
731742 UNIT_ASSERT_VALUES_EQUAL_C (result.GetStatus (), EStatus::SUCCESS, result.GetIssues ().ToString ());
732743
733744 auto actual = ReformatYson (FormatResultSetYson (result.GetResultSet (0 )));
734745 auto expected1 = ReformatYson (R"( [[
735746 %true;-5;5u;-8;8u;-10;10u;-20;20u;30.5;40.5;"50.5";"655555555555555.5";"9";".605e2";"StringValue";"Utf8Value";"[{Value=50}]";
736- "[{\"Value\":60}]";"[{\"Value\":70}]";18271u;1578755093u;1578863917000000u;3600;"2022-03-14,GMT";
747+ "[{\"Value\":60}]";"[{\"Value\":70}]";18271u;1578755093u;1578863917000000u;3600;-17158;1578755093;1578863917000000;3600; "2022-03-14,GMT";
737748 "2022-03-14T00:00:00,GMT";"2022-03-14T00:00:00.123000,GMT";["Opt"];["Tuple0";1];[17u;19u];[];["Paul";-5];
738749 [["Key2";20u];["Key1";10u]]
739750 ]])" );
740751 auto expected2 = ReformatYson (R"( [[
741752 %true;-5;5u;-8;8u;-10;10u;-20;20u;30.5;40.5;"50.5";"655555555555555.5";"9";".605e2";"StringValue";"Utf8Value";"[{Value=50}]";
742- "[{\"Value\":60}]";"[{\"Value\":70}]";18271u;1578755093u;1578863917000000u;3600;"2022-03-14,GMT";
753+ "[{\"Value\":60}]";"[{\"Value\":70}]";18271u;1578755093u;1578863917000000u;3600;-17158;1578755093;1578863917000000;3600; "2022-03-14,GMT";
743754 "2022-03-14T00:00:00,GMT";"2022-03-14T00:00:00.123000,GMT";["Opt"];["Tuple0";1];[17u;19u];[];["Paul";-5];
744755 [["Key1";10u];["Key2";20u]]
745756 ]])" );
@@ -864,7 +875,7 @@ Y_UNIT_TEST_SUITE(KqpParams) {
864875 ($key, $key1, $key22, $key35, $value1, $value22, $value35);
865876 )" ), upsertParams);
866877 UNIT_ASSERT_VALUES_EQUAL_C (status, EStatus::SUCCESS, issues);
867- }
878+ }
868879
869880 TString expected = R"( [[[1];["2"];["1234.4321"];["1555555555555555.123456789"];["9"];["123.321"];["555555555555555.123456789"]]])" ;
870881 auto selectParams = tableClient.GetParamsBuilder ()
@@ -934,7 +945,7 @@ Y_UNIT_TEST_SUITE(KqpParams) {
934945 UNIT_ASSERT_VALUES_EQUAL_C (status, EStatus::SUCCESS, issues);
935946 CompareYson (expected, FormatResultSetYson (resultSet));
936947 }
937- }
948+ }
938949
939950 // Declare wrong decimal params
940951 {
@@ -1062,7 +1073,7 @@ Y_UNIT_TEST_SUITE(KqpParams) {
10621073 ($key, $key1, $key22, $key35, $value1, $value22, $value35);
10631074 )" ), upsertParams);
10641075 UNIT_ASSERT_VALUES_EQUAL_C (status, EStatus::SUCCESS, issues);
1065- }
1076+ }
10661077 // Good case: select overflowed and inf decimal
10671078 {
10681079 auto emptyParams = tableClient.GetParamsBuilder ().Build ();
0 commit comments