orez 0.2.26 → 0.2.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/dist/cf-do/worker.d.ts.map +1 -1
  2. package/dist/cf-do/worker.js +9 -1
  3. package/dist/cf-do/worker.js.map +1 -1
  4. package/dist/pg-proxy-do-backend.d.ts +2 -0
  5. package/dist/pg-proxy-do-backend.d.ts.map +1 -1
  6. package/dist/pg-proxy-do-backend.js +49 -7
  7. package/dist/pg-proxy-do-backend.js.map +1 -1
  8. package/dist/pg-sqlite-compiler/catalog/seed.d.ts +67 -0
  9. package/dist/pg-sqlite-compiler/catalog/seed.d.ts.map +1 -0
  10. package/dist/pg-sqlite-compiler/catalog/seed.js +436 -0
  11. package/dist/pg-sqlite-compiler/catalog/seed.js.map +1 -0
  12. package/dist/pg-sqlite-compiler/index.d.ts +12 -0
  13. package/dist/pg-sqlite-compiler/index.d.ts.map +1 -0
  14. package/dist/pg-sqlite-compiler/index.js +59 -0
  15. package/dist/pg-sqlite-compiler/index.js.map +1 -0
  16. package/dist/pg-sqlite-compiler/passes/ast-utils.d.ts +48 -0
  17. package/dist/pg-sqlite-compiler/passes/ast-utils.d.ts.map +1 -0
  18. package/dist/pg-sqlite-compiler/passes/ast-utils.js +93 -0
  19. package/dist/pg-sqlite-compiler/passes/ast-utils.js.map +1 -0
  20. package/dist/pg-sqlite-compiler/passes/catalog.d.ts +34 -0
  21. package/dist/pg-sqlite-compiler/passes/catalog.d.ts.map +1 -0
  22. package/dist/pg-sqlite-compiler/passes/catalog.js +30 -0
  23. package/dist/pg-sqlite-compiler/passes/catalog.js.map +1 -0
  24. package/dist/pg-sqlite-compiler/passes/datetime.d.ts +21 -0
  25. package/dist/pg-sqlite-compiler/passes/datetime.d.ts.map +1 -0
  26. package/dist/pg-sqlite-compiler/passes/datetime.js +53 -0
  27. package/dist/pg-sqlite-compiler/passes/datetime.js.map +1 -0
  28. package/dist/pg-sqlite-compiler/passes/index.d.ts +21 -0
  29. package/dist/pg-sqlite-compiler/passes/index.d.ts.map +1 -0
  30. package/dist/pg-sqlite-compiler/passes/index.js +39 -0
  31. package/dist/pg-sqlite-compiler/passes/index.js.map +1 -0
  32. package/dist/pg-sqlite-compiler/passes/types.d.ts +41 -0
  33. package/dist/pg-sqlite-compiler/passes/types.d.ts.map +1 -0
  34. package/dist/pg-sqlite-compiler/passes/types.js +103 -0
  35. package/dist/pg-sqlite-compiler/passes/types.js.map +1 -0
  36. package/dist/pg-sqlite-compiler/test/oracle.d.ts +34 -0
  37. package/dist/pg-sqlite-compiler/test/oracle.d.ts.map +1 -0
  38. package/dist/pg-sqlite-compiler/test/oracle.js +204 -0
  39. package/dist/pg-sqlite-compiler/test/oracle.js.map +1 -0
  40. package/dist/pg-sqlite-compiler/types.d.ts +55 -0
  41. package/dist/pg-sqlite-compiler/types.d.ts.map +1 -0
  42. package/dist/pg-sqlite-compiler/types.js +2 -0
  43. package/dist/pg-sqlite-compiler/types.js.map +1 -0
  44. package/package.json +7 -2
  45. package/src/cf-do/.wrangler/cache/cf.json +1 -1
  46. package/src/cf-do/.wrangler/state/v3/cache/miniflare-CacheObject/metadata.sqlite-shm +0 -0
  47. package/src/cf-do/.wrangler/state/v3/cache/miniflare-CacheObject/metadata.sqlite-wal +0 -0
  48. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/metadata.sqlite-shm +0 -0
  49. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/metadata.sqlite-wal +0 -0
  50. package/src/cf-do/.wrangler/tmp/bundle-0z4CpE/middleware-insertion-facade.js +11 -0
  51. package/src/cf-do/.wrangler/tmp/bundle-0z4CpE/middleware-loader.entry.ts +134 -0
  52. package/src/cf-do/.wrangler/tmp/bundle-vYmw0E/middleware-insertion-facade.js +11 -0
  53. package/src/cf-do/.wrangler/tmp/bundle-vYmw0E/middleware-loader.entry.ts +134 -0
  54. package/src/cf-do/.wrangler/tmp/dev-cbILNo/worker.js +1059 -0
  55. package/src/cf-do/.wrangler/tmp/dev-cbILNo/worker.js.map +8 -0
  56. package/src/cf-do/.wrangler/tmp/dev-qbho19/worker.js +1059 -0
  57. package/src/cf-do/.wrangler/tmp/dev-qbho19/worker.js.map +8 -0
  58. package/src/cf-do/ARCHITECTURE.md +10 -0
  59. package/src/cf-do/CHAT_E2E.md +213 -0
  60. package/src/cf-do/worker.ts +11 -3
  61. package/src/cli.test.ts +3 -1
  62. package/src/pg-proxy-do-backend.ts +44 -10
  63. package/src/pg-sqlite-compiler/README.md +53 -0
  64. package/src/pg-sqlite-compiler/catalog/seed.ts +524 -0
  65. package/src/pg-sqlite-compiler/fixtures/pgsqlite/arithmetic.json +307 -0
  66. package/src/pg-sqlite-compiler/fixtures/pgsqlite/array.json +377 -0
  67. package/src/pg-sqlite-compiler/fixtures/pgsqlite/cast.json +12 -0
  68. package/src/pg-sqlite-compiler/fixtures/pgsqlite/catalog.json +447 -0
  69. package/src/pg-sqlite-compiler/fixtures/pgsqlite/create-table.json +32 -0
  70. package/src/pg-sqlite-compiler/fixtures/pgsqlite/datetime.json +397 -0
  71. package/src/pg-sqlite-compiler/fixtures/pgsqlite/enum.json +337 -0
  72. package/src/pg-sqlite-compiler/fixtures/pgsqlite/insert.json +337 -0
  73. package/src/pg-sqlite-compiler/fixtures/pgsqlite/json.json +537 -0
  74. package/src/pg-sqlite-compiler/fixtures/pgsqlite/misc.json +1837 -0
  75. package/src/pg-sqlite-compiler/index.ts +73 -0
  76. package/src/pg-sqlite-compiler/integration.test.ts +136 -0
  77. package/src/pg-sqlite-compiler/passes/ast-utils.ts +113 -0
  78. package/src/pg-sqlite-compiler/passes/catalog.ts +65 -0
  79. package/src/pg-sqlite-compiler/passes/datetime.ts +74 -0
  80. package/src/pg-sqlite-compiler/passes/index.ts +49 -0
  81. package/src/pg-sqlite-compiler/passes/types.ts +156 -0
  82. package/src/pg-sqlite-compiler/smoke.test.ts +69 -0
  83. package/src/pg-sqlite-compiler/test/catalog.test.ts +171 -0
  84. package/src/pg-sqlite-compiler/test/corpus.test.ts +161 -0
  85. package/src/pg-sqlite-compiler/test/datetime.oracle.test.ts +102 -0
  86. package/src/pg-sqlite-compiler/test/oracle.ts +237 -0
  87. package/src/pg-sqlite-compiler/test/types.test.ts +109 -0
  88. package/src/pg-sqlite-compiler/types.ts +63 -0
  89. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/0f0f3bdf0abda097eb6f1246db4657d9fc622081362d894d82c1a1ce067b05b6.sqlite +0 -0
  90. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/1ddd3a4a48a11b51658444f5458a1fb175194b1d5b6a5bda20ef3fe3205b900c.sqlite +0 -0
  91. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/3835f242df9728adba3d127a238793fd054ed3e51df3f60749ee744c469bf2a2.sqlite +0 -0
  92. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/4aa9c80eb716cf55b8995ccf7afab0b36c683e6da07d7c37a3f9c570136036df.sqlite +0 -0
  93. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/533e2fd1d6ea46e7a9a0017916ef341802d438d72583462755f2c1f8225e9bf2.sqlite +0 -0
  94. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/5ffa1aced1225ecaeac6366f7586aa3de92761cdff8711d81fbd81f248076abd.sqlite +0 -0
  95. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/686c3a9f0d7e59ed2ab607efd4b76d779c97cafeb3818380033bf7c7eb86c819.sqlite +0 -0
  96. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/6e8214e8dcfadd0deb52d64e5e9ca85c6b329ace11193909845995396914c473.sqlite +0 -0
  97. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/78d9ec9ff873d3fe3507ff53c2a6f6dfc408b4268eb0db3f2a146c0678965366.sqlite +0 -0
  98. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/7eff9f0ed7e27ad0d3f9d923de0682fab1928591172c1ba336c5f79a134a5d85.sqlite +0 -0
  99. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/836cda5b995b25867d722ed4f4c2292167e80351a3c6038db626648eb247dd8b.sqlite +0 -0
  100. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/91ef63b112209ab30172763acd8a0935106c248f7f1bcae5545ce37a9f201551.sqlite +0 -0
  101. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/a66ea4293a5f5938bc6d116edfa2522bb85bc37aea3541fbc09c3b613b9b32c0.sqlite +0 -0
  102. package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/ceb2ab26b80590840b65651deb6e948d3bf81565c6751f3a58752cf4bf4aecae.sqlite +0 -0
  103. /package/src/cf-do/.wrangler/state/v3/do/zero-do-ZeroDO/{204a39120310d37e972c5914cfd71ad55c151bdb9e8ed289a5f8c5b052dd60e4.sqlite → 0ffaabee41a60e04dd0eb7db3073f0a40139e6a97ccd26823967acb652b89a7b.sqlite} +0 -0
@@ -0,0 +1,397 @@
1
+ {
2
+ "source": "erans/pgsqlite tests/",
3
+ "bucket": "datetime",
4
+ "count": 78,
5
+ "cases": [
6
+ {
7
+ "name": "datetime_translator_test-1",
8
+ "sql": "CREATE TABLE trigger_test (\n id INTEGER PRIMARY KEY,\n date_col DATE,\n time_col TIME,\n timestamp_col TIMESTAMP\n )",
9
+ "source": "datetime_translator_test.rs"
10
+ },
11
+ {
12
+ "name": "datetime_translator_test-2",
13
+ "sql": "SELECT name, sql FROM sqlite_master WHERE type = 'trigger' AND name LIKE '__pgsqlite_datetime%'",
14
+ "source": "datetime_translator_test.rs"
15
+ },
16
+ {
17
+ "name": "datetime_translator_test-3",
18
+ "sql": "SELECT column_name, pg_type, sqlite_type FROM __pgsqlite_schema \n WHERE table_name = 'trigger_test' AND pg_type IN ('date', 'time', 'timestamp')",
19
+ "source": "datetime_translator_test.rs"
20
+ },
21
+ {
22
+ "name": "datetime_translator_test-4",
23
+ "sql": "INSERT INTO trigger_test VALUES (1, '2024-01-15', '14:30:00', '2024-01-15 14:30:00')",
24
+ "source": "datetime_translator_test.rs"
25
+ },
26
+ {
27
+ "name": "datetime_translator_test-5",
28
+ "sql": "SELECT typeof(date_col), typeof(time_col), typeof(timestamp_col) \n FROM trigger_test WHERE id = 1",
29
+ "source": "datetime_translator_test.rs"
30
+ },
31
+ {
32
+ "name": "datetime_translator_test-6",
33
+ "sql": "SELECT CAST(date_col AS TEXT), CAST(time_col AS TEXT), CAST(timestamp_col AS TEXT) FROM trigger_test WHERE id = 1",
34
+ "source": "datetime_translator_test.rs"
35
+ },
36
+ {
37
+ "name": "datetime_translator_test-7",
38
+ "sql": "CREATE TABLE translator_test (\n id INTEGER PRIMARY KEY,\n date_col DATE\n )",
39
+ "source": "datetime_translator_test.rs"
40
+ },
41
+ {
42
+ "name": "datetime_translator_test-8",
43
+ "sql": "INSERT INTO translator_test VALUES (1, '2024-01-15')",
44
+ "source": "datetime_translator_test.rs"
45
+ },
46
+ {
47
+ "name": "datetime_translator_test-9",
48
+ "sql": "SELECT typeof(date_col) FROM translator_test WHERE id = 1",
49
+ "source": "datetime_translator_test.rs"
50
+ },
51
+ {
52
+ "name": "datetime_translator_test-10",
53
+ "sql": "SELECT date_col FROM translator_test WHERE id = 1",
54
+ "source": "datetime_translator_test.rs"
55
+ },
56
+ {
57
+ "name": "extract_debug_test-1",
58
+ "sql": "SELECT 1",
59
+ "source": "extract_debug_test.rs"
60
+ },
61
+ {
62
+ "name": "extract_debug_test-2",
63
+ "sql": "SELECT extract('year', 1686840645.0) as year",
64
+ "source": "extract_debug_test.rs"
65
+ },
66
+ {
67
+ "name": "extract_minimal_test-1",
68
+ "sql": "CREATE TABLE test_dates (id INTEGER PRIMARY KEY, ts REAL)",
69
+ "source": "extract_minimal_test.rs"
70
+ },
71
+ {
72
+ "name": "extract_minimal_test-2",
73
+ "sql": "INSERT INTO test_dates (id, ts) VALUES (1, 1686840645.0)",
74
+ "source": "extract_minimal_test.rs"
75
+ },
76
+ {
77
+ "name": "extract_minimal_test-3",
78
+ "sql": "SELECT EXTRACT(YEAR FROM to_timestamp(ts)) as year FROM test_dates WHERE id = 1",
79
+ "source": "extract_minimal_test.rs"
80
+ },
81
+ {
82
+ "name": "extract_minimal_test-4",
83
+ "sql": "SELECT EXTRACT(YEAR FROM to_timestamp(1686840645.0)) as year",
84
+ "source": "extract_minimal_test.rs"
85
+ },
86
+ {
87
+ "name": "datetime_functions_test-1",
88
+ "sql": "SELECT NOW() as now",
89
+ "source": "datetime_functions_test.rs"
90
+ },
91
+ {
92
+ "name": "datetime_functions_test-2",
93
+ "sql": "SELECT CURRENT_DATE as today",
94
+ "source": "datetime_functions_test.rs"
95
+ },
96
+ {
97
+ "name": "datetime_query_debug_test-1",
98
+ "sql": "CREATE TABLE test_events (id INTEGER PRIMARY KEY, ts REAL)",
99
+ "source": "datetime_query_debug_test.rs"
100
+ },
101
+ {
102
+ "name": "datetime_query_debug_test-2",
103
+ "sql": "INSERT INTO test_events (id, ts) VALUES (1, 1686840645.0)",
104
+ "source": "datetime_query_debug_test.rs"
105
+ },
106
+ {
107
+ "name": "datetime_query_debug_test-3",
108
+ "sql": "SELECT * FROM test_events",
109
+ "source": "datetime_query_debug_test.rs"
110
+ },
111
+ {
112
+ "name": "datetime_query_debug_test-4",
113
+ "sql": "SELECT EXTRACT(YEAR FROM 1686840645.0)",
114
+ "source": "datetime_query_debug_test.rs"
115
+ },
116
+ {
117
+ "name": "datetime_query_debug_test-5",
118
+ "sql": "SELECT extract('year', ts) FROM test_events WHERE id = 1",
119
+ "source": "datetime_query_debug_test.rs"
120
+ },
121
+ {
122
+ "name": "datetime_query_debug_test-6",
123
+ "sql": "SELECT EXTRACT(YEAR FROM ts) FROM test_events WHERE id = 1",
124
+ "source": "datetime_query_debug_test.rs"
125
+ },
126
+ {
127
+ "name": "datetime_query_debug_test-7",
128
+ "sql": "SELECT ts FROM test_events WHERE id = 1",
129
+ "source": "datetime_query_debug_test.rs"
130
+ },
131
+ {
132
+ "name": "datetime_working_test-2",
133
+ "sql": "SELECT CURRENT_DATE",
134
+ "source": "datetime_working_test.rs"
135
+ },
136
+ {
137
+ "name": "datetime_working_test-3",
138
+ "sql": "CREATE TABLE timestamps (id INTEGER PRIMARY KEY, ts DOUBLE PRECISION)",
139
+ "source": "datetime_working_test.rs"
140
+ },
141
+ {
142
+ "name": "datetime_working_test-4",
143
+ "sql": "INSERT INTO timestamps (id, ts) VALUES ($1, $2)",
144
+ "source": "datetime_working_test.rs"
145
+ },
146
+ {
147
+ "name": "datetime_working_test-5",
148
+ "sql": "SELECT to_timestamp(ts) FROM timestamps WHERE id = 1",
149
+ "source": "datetime_working_test.rs"
150
+ },
151
+ {
152
+ "name": "datetime_working_test-6",
153
+ "sql": "SELECT EXTRACT(YEAR FROM to_timestamp(ts)) as year,\n EXTRACT(MONTH FROM to_timestamp(ts)) as month,\n EXTRACT(DAY FROM to_timestamp(ts)) as day,\n EXTRACT(HOUR FROM to_timestamp(ts)) as hour,\n EXTRACT(MINUTE FROM to_timestamp(ts)) as minute\n FROM timestamps WHERE id = 1",
154
+ "source": "datetime_working_test.rs"
155
+ },
156
+ {
157
+ "name": "datetime_working_test-9",
158
+ "sql": "SELECT DATE_TRUNC('hour', to_timestamp(ts)) as hour_trunc,\n DATE_TRUNC('day', to_timestamp(ts)) as day_trunc,\n DATE_TRUNC('month', to_timestamp(ts)) as month_trunc\n FROM timestamps WHERE id = 1",
159
+ "source": "datetime_working_test.rs"
160
+ },
161
+ {
162
+ "name": "datetime_working_test-12",
163
+ "sql": "SELECT to_timestamp(ts) + 86400000000 as tomorrow,\n to_timestamp(ts) - 3600000000 as hour_ago\n FROM timestamps WHERE id = 1",
164
+ "source": "datetime_working_test.rs"
165
+ },
166
+ {
167
+ "name": "datetime_storage_type_test-1",
168
+ "sql": "CREATE TABLE datetime_storage_test (\n id INTEGER PRIMARY KEY,\n date_col DATE,\n time_col TIME,\n timestamp_col TIMESTAMP,\n timestamptz_col TIMESTAMPTZ,\n timetz_col TIMETZ,\n interval_col INTERVAL,\n datetime_col DATETIME\n )",
169
+ "source": "datetime_storage_type_test.rs"
170
+ },
171
+ {
172
+ "name": "datetime_storage_type_test-2",
173
+ "sql": "SELECT sql FROM sqlite_master WHERE type='table' AND name='main.datetime_storage_test'",
174
+ "source": "datetime_storage_type_test.rs"
175
+ },
176
+ {
177
+ "name": "datetime_storage_type_test-3",
178
+ "sql": "SELECT cid, name, type FROM pragma_table_info('datetime_storage_test') ORDER BY cid",
179
+ "source": "datetime_storage_type_test.rs"
180
+ },
181
+ {
182
+ "name": "datetime_storage_type_test-4",
183
+ "sql": "CREATE TABLE datetime_aliases_test (\n id INTEGER PRIMARY KEY,\n ts_with_tz TIMESTAMP WITH TIME ZONE,\n ts_without_tz TIMESTAMP WITHOUT TIME ZONE,\n time_with_tz TIME WITH TIME ZONE,\n time_without_tz TIME WITHOUT TIME ZONE,\n mixed_case_date DaTe,\n mixed_case_time TiMe,\n mixed_case_timestamp TiMeStAmP\n )",
184
+ "source": "datetime_storage_type_test.rs"
185
+ },
186
+ {
187
+ "name": "datetime_storage_type_test-5",
188
+ "sql": "SELECT name, type FROM pragma_table_info('datetime_aliases_test') WHERE name != 'id' ORDER BY cid",
189
+ "source": "datetime_storage_type_test.rs"
190
+ },
191
+ {
192
+ "name": "datetime_storage_type_test-6",
193
+ "sql": "CREATE TABLE datetime_metadata_test (\n id INTEGER PRIMARY KEY,\n date_col DATE,\n time_col TIME,\n timestamp_col TIMESTAMP,\n timestamptz_col TIMESTAMPTZ,\n timetz_col TIMETZ,\n interval_col INTERVAL\n )",
194
+ "source": "datetime_storage_type_test.rs"
195
+ },
196
+ {
197
+ "name": "datetime_storage_type_test-7",
198
+ "sql": "SELECT column_name, pg_type, sqlite_type \n FROM __pgsqlite_schema \n WHERE table_name = 'datetime_metadata_test' \n AND column_name != 'id'\n ORDER BY column_name",
199
+ "source": "datetime_storage_type_test.rs"
200
+ },
201
+ {
202
+ "name": "datetime_storage_type_test-8",
203
+ "sql": "CREATE TABLE datetime_values_test (\n id INTEGER PRIMARY KEY,\n date_col DATE,\n time_col TIME,\n timestamp_col TIMESTAMP,\n timestamptz_col TIMESTAMPTZ,\n timetz_col TIMETZ,\n interval_col INTERVAL\n )",
204
+ "source": "datetime_storage_type_test.rs"
205
+ },
206
+ {
207
+ "name": "datetime_storage_type_test-9",
208
+ "sql": "INSERT INTO datetime_values_test VALUES (\n 1,\n '2024-01-15',\n '14:30:00',\n '2024-01-15 14:30:00',\n '2024-01-15 14:30:00+00',\n '14:30:00+00',\n '1 day 2 hours 30 minutes'\n )",
209
+ "source": "datetime_storage_type_test.rs"
210
+ },
211
+ {
212
+ "name": "datetime_storage_type_test-10",
213
+ "sql": "SELECT \n typeof(date_col) as date_type,\n typeof(time_col) as time_type,\n typeof(timestamp_col) as timestamp_type,\n typeof(timestamptz_col) as timestamptz_type,\n typeof(timetz_col) as timetz_type,\n typeof(interval_col) as interval_type,\n date_col as date_raw,\n time_col as time_raw,\n timestamp_col as timestamp_raw,\n timestamptz_col as timestamptz_raw,\n timetz_col as timetz_raw,\n interval_col as interval_raw\n FROM datetime_values_test WHERE id = 1",
214
+ "source": "datetime_storage_type_test.rs"
215
+ },
216
+ {
217
+ "name": "datetime_storage_type_test-11",
218
+ "sql": "SELECT date_col, time_col, timestamp_col FROM datetime_values_test WHERE id = 1",
219
+ "source": "datetime_storage_type_test.rs"
220
+ },
221
+ {
222
+ "name": "datetime_storage_type_test-12",
223
+ "sql": "CREATE TABLE datetime_constraints_test (\n id INTEGER PRIMARY KEY,\n created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,\n updated_at TIMESTAMP,\n birth_date DATE CHECK (birth_date > '1900-01-01'),\n work_start TIME DEFAULT '09:00:00',\n meeting_time TIMETZ\n )",
224
+ "source": "datetime_storage_type_test.rs"
225
+ },
226
+ {
227
+ "name": "datetime_storage_type_test-13",
228
+ "sql": "SELECT name, type FROM pragma_table_info('datetime_constraints_test') \n WHERE name != 'id' ORDER BY cid",
229
+ "source": "datetime_storage_type_test.rs"
230
+ },
231
+ {
232
+ "name": "datetime_storage_type_test-14",
233
+ "sql": "CREATE TABLE datetime_array_test (\n id INTEGER PRIMARY KEY,\n dates DATE[]\n )",
234
+ "source": "datetime_storage_type_test.rs"
235
+ },
236
+ {
237
+ "name": "datetime_storage_type_test-15",
238
+ "sql": "CREATE DOMAIN positive_date AS DATE CHECK (VALUE > '2000-01-01')",
239
+ "source": "datetime_storage_type_test.rs"
240
+ },
241
+ {
242
+ "name": "datetime_storage_type_test-16",
243
+ "sql": "CREATE TABLE datetime_complex_test (\n id INTEGER PRIMARY KEY,\n nullable_date DATE NULL,\n not_null_time TIME NOT NULL,\n unique_timestamp TIMESTAMP UNIQUE,\n primary_key_date DATE PRIMARY KEY\n )",
244
+ "source": "datetime_storage_type_test.rs"
245
+ },
246
+ {
247
+ "name": "datetime_storage_type_test-17",
248
+ "sql": "CREATE TABLE datetime_long_names_test (\n id INTEGER PRIMARY KEY,\n this_is_a_very_long_column_name_for_a_date_field DATE,\n another_extremely_long_column_name_for_timestamp_with_timezone TIMESTAMPTZ\n )",
249
+ "source": "datetime_storage_type_test.rs"
250
+ },
251
+ {
252
+ "name": "datetime_storage_type_test-18",
253
+ "sql": "SELECT name, type FROM pragma_table_info('datetime_long_names_test') \n WHERE name != 'id' ORDER BY cid",
254
+ "source": "datetime_storage_type_test.rs"
255
+ },
256
+ {
257
+ "name": "datetime_storage_type_test-19",
258
+ "sql": "CREATE TABLE datetime_limitations_test (\n id INTEGER PRIMARY KEY,\n date_col DATE,\n time_col TIME,\n timestamp_col TIMESTAMP\n )",
259
+ "source": "datetime_storage_type_test.rs"
260
+ },
261
+ {
262
+ "name": "datetime_storage_type_test-20",
263
+ "sql": "INSERT INTO datetime_limitations_test VALUES (1, '2024-01-15', '14:30:00', '2024-01-15 14:30:00')",
264
+ "source": "datetime_storage_type_test.rs"
265
+ },
266
+ {
267
+ "name": "datetime_storage_type_test-21",
268
+ "sql": "SELECT typeof(date_col), typeof(time_col), typeof(timestamp_col) \n FROM datetime_limitations_test WHERE id = 1",
269
+ "source": "datetime_storage_type_test.rs"
270
+ },
271
+ {
272
+ "name": "datetime_storage_type_test-22",
273
+ "sql": "CREATE TABLE \"DateTime Special Table\" (\n \"ID Column\" INTEGER PRIMARY KEY,\n \"Date Column!\" DATE,\n \"Time (with parens)\" TIME,\n \"Timestamp @ Special\" TIMESTAMP\n )",
274
+ "source": "datetime_storage_type_test.rs"
275
+ },
276
+ {
277
+ "name": "datetime_storage_type_test-23",
278
+ "sql": "SELECT name, type FROM pragma_table_info('\"DateTime Special Table\"') \n WHERE name != 'ID Column' ORDER BY cid",
279
+ "source": "datetime_storage_type_test.rs"
280
+ },
281
+ {
282
+ "name": "datetime_column_test-1",
283
+ "sql": "CREATE TABLE test_table (id INTEGER PRIMARY KEY, ts REAL)",
284
+ "source": "datetime_column_test.rs"
285
+ },
286
+ {
287
+ "name": "datetime_column_test-2",
288
+ "sql": "INSERT INTO test_table (id, ts) VALUES (1, 1686840645.0)",
289
+ "source": "datetime_column_test.rs"
290
+ },
291
+ {
292
+ "name": "datetime_column_test-3",
293
+ "sql": "SELECT ts FROM test_table WHERE id = 1",
294
+ "source": "datetime_column_test.rs"
295
+ },
296
+ {
297
+ "name": "datetime_column_test-4",
298
+ "sql": "SELECT extract('year', ts) as year FROM test_table WHERE id = 1",
299
+ "source": "datetime_column_test.rs"
300
+ },
301
+ {
302
+ "name": "datetime_column_test-5",
303
+ "sql": "SELECT EXTRACT(YEAR FROM ts) as year FROM test_table WHERE id = 1",
304
+ "source": "datetime_column_test.rs"
305
+ },
306
+ {
307
+ "name": "datetime_roundtrip_test-1",
308
+ "sql": "CREATE TABLE roundtrip_test (\n id INTEGER PRIMARY KEY,\n date_col DATE,\n time_col TIME,\n timestamp_col TIMESTAMP\n )",
309
+ "source": "datetime_roundtrip_test.rs"
310
+ },
311
+ {
312
+ "name": "datetime_roundtrip_test-2",
313
+ "sql": "SELECT column_name, pg_type FROM __pgsqlite_schema WHERE table_name = 'roundtrip_test' ORDER BY column_name",
314
+ "source": "datetime_roundtrip_test.rs"
315
+ },
316
+ {
317
+ "name": "datetime_roundtrip_test-3",
318
+ "sql": "INSERT INTO roundtrip_test VALUES (1, '2024-01-15', '14:30:00', '2024-01-15 14:30:00')",
319
+ "source": "datetime_roundtrip_test.rs"
320
+ },
321
+ {
322
+ "name": "datetime_roundtrip_test-4",
323
+ "sql": "SELECT typeof(date_col), typeof(time_col), typeof(timestamp_col) FROM roundtrip_test WHERE id = 1",
324
+ "source": "datetime_roundtrip_test.rs"
325
+ },
326
+ {
327
+ "name": "datetime_roundtrip_test-5",
328
+ "sql": "SELECT date_col, time_col, timestamp_col FROM roundtrip_test WHERE id = 1",
329
+ "source": "datetime_roundtrip_test.rs"
330
+ },
331
+ {
332
+ "name": "datetime_roundtrip_test-6",
333
+ "sql": "CREATE TABLE simple_test (id INT, date_col DATE)",
334
+ "source": "datetime_roundtrip_test.rs"
335
+ },
336
+ {
337
+ "name": "datetime_roundtrip_test-7",
338
+ "sql": "INSERT INTO simple_test VALUES (1, '2024-01-15')",
339
+ "source": "datetime_roundtrip_test.rs"
340
+ },
341
+ {
342
+ "name": "datetime_roundtrip_test-8",
343
+ "sql": "SELECT date_col FROM simple_test WHERE id = 1",
344
+ "source": "datetime_roundtrip_test.rs"
345
+ },
346
+ {
347
+ "name": "datetime_conversion_success_test-1",
348
+ "sql": "CREATE TABLE dt_test (id INT, date_col DATE, time_col TIME)",
349
+ "source": "datetime_conversion_success_test.rs"
350
+ },
351
+ {
352
+ "name": "datetime_conversion_success_test-2",
353
+ "sql": "INSERT INTO dt_test VALUES (1, '2024-01-15', '14:30:00')",
354
+ "source": "datetime_conversion_success_test.rs"
355
+ },
356
+ {
357
+ "name": "datetime_conversion_success_test-3",
358
+ "sql": "SELECT typeof(date_col), typeof(time_col) FROM dt_test WHERE id = 1",
359
+ "source": "datetime_conversion_success_test.rs"
360
+ },
361
+ {
362
+ "name": "datetime_conversion_success_test-4",
363
+ "sql": "SELECT date_col, time_col FROM dt_test WHERE id = 1",
364
+ "source": "datetime_conversion_success_test.rs"
365
+ },
366
+ {
367
+ "name": "datetime_basic_test-2",
368
+ "sql": "SELECT CURRENT_TIMESTAMP as ts",
369
+ "source": "datetime_basic_test.rs"
370
+ },
371
+ {
372
+ "name": "datetime_basic_test-3",
373
+ "sql": "SELECT CAST(CURRENT_DATE AS TEXT) as today",
374
+ "source": "datetime_basic_test.rs"
375
+ },
376
+ {
377
+ "name": "datetime_debug_test-1",
378
+ "sql": "SELECT extract('year', 1686840645.0)",
379
+ "source": "datetime_debug_test.rs"
380
+ },
381
+ {
382
+ "name": "datetime_debug_test-2",
383
+ "sql": "SELECT date_trunc('hour', 1686840645.0)",
384
+ "source": "datetime_debug_test.rs"
385
+ },
386
+ {
387
+ "name": "datetime_debug_test-3",
388
+ "sql": "SELECT EXTRACT(YEAR FROM 1686840645.0) as year",
389
+ "source": "datetime_debug_test.rs"
390
+ },
391
+ {
392
+ "name": "datetime_debug_test-4",
393
+ "sql": "SELECT EXTRACT(YEAR FROM 1686840645.0) as year, \n EXTRACT(MONTH FROM 1686840645.0) as month",
394
+ "source": "datetime_debug_test.rs"
395
+ }
396
+ ]
397
+ }