Skip to content

Commit 20ee74e

Browse files
committed
More moves
1 parent 66e8b48 commit 20ee74e

File tree

2 files changed

+150
-138
lines changed

2 files changed

+150
-138
lines changed

enginetest/queries/function_queries.go

Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
package queries
1616

1717
import (
18+
"time"
19+
1820
"github.com/dolthub/go-mysql-server/sql"
1921
"github.com/dolthub/go-mysql-server/sql/types"
2022
)
@@ -1224,4 +1226,152 @@ var FunctionQueryTests = []QueryTest{
12241226
Query: `SELECT CONVERT(10, DECIMAL(4,2))`,
12251227
Expected: []sql.Row{{"10.00"}},
12261228
},
1229+
1230+
// Additional JSON Function Tests
1231+
{
1232+
Query: `SELECT JSON_UNQUOTE('"foo"')`,
1233+
Expected: []sql.Row{{"foo"}},
1234+
},
1235+
{
1236+
Query: `SELECT JSON_UNQUOTE('[1, 2, 3]')`,
1237+
Expected: []sql.Row{{"[1, 2, 3]"}},
1238+
},
1239+
{
1240+
Query: `SELECT JSON_UNQUOTE('"\\t\\u0032"')`,
1241+
Expected: []sql.Row{{"\t2"}},
1242+
},
1243+
{
1244+
Query: `SELECT JSON_UNQUOTE('"\t\\u0032"')`,
1245+
Expected: []sql.Row{{"\t\\u0032"}},
1246+
},
1247+
{
1248+
Query: `SELECT JSON_UNQUOTE(JSON_EXTRACT('{"xid":"hello"}', '$.xid')) = "hello"`,
1249+
Expected: []sql.Row{{true}},
1250+
},
1251+
{
1252+
Query: `SELECT JSON_QUOTE('"foo"')`,
1253+
Expected: []sql.Row{{`"\"foo\""`}},
1254+
},
1255+
{
1256+
Query: `SELECT JSON_QUOTE('[1, 2, 3]')`,
1257+
Expected: []sql.Row{{`"[1, 2, 3]"`}},
1258+
},
1259+
{
1260+
Query: `SELECT JSON_QUOTE('"\t\u0032"')`,
1261+
Expected: []sql.Row{{`"\"\tu0032\""`}},
1262+
},
1263+
{
1264+
Query: `SELECT JSON_QUOTE('"\t\\u0032"')`,
1265+
Expected: []sql.Row{{`"\"\t\\u0032\""`}},
1266+
},
1267+
{
1268+
Query: `SELECT JSON_EXTRACT('{"xid":"hello"}', '$.xid') = "hello"`,
1269+
Expected: []sql.Row{{true}},
1270+
},
1271+
{
1272+
Query: `SELECT JSON_EXTRACT('{"xid":"hello"}', '$.xid') = '"hello"'`,
1273+
Expected: []sql.Row{{false}},
1274+
},
1275+
{
1276+
Query: `SELECT JSON_UNQUOTE(JSON_EXTRACT('{"xid":null}', '$.xid'))`,
1277+
Expected: []sql.Row{{"null"}},
1278+
},
1279+
1280+
// Utility Function Tests
1281+
{
1282+
Query: `SELECT DATABASE()`,
1283+
Expected: []sql.Row{
1284+
{"mydb"},
1285+
},
1286+
},
1287+
{
1288+
Query: `SELECT USER()`,
1289+
Expected: []sql.Row{
1290+
{"root@localhost"},
1291+
},
1292+
},
1293+
{
1294+
Query: `SELECT CURRENT_USER()`,
1295+
Expected: []sql.Row{
1296+
{"root@localhost"},
1297+
},
1298+
},
1299+
{
1300+
Query: `SELECT CURRENT_USER`,
1301+
Expected: []sql.Row{
1302+
{"root@localhost"},
1303+
},
1304+
ExpectedColumns: sql.Schema{
1305+
{
1306+
Name: "CURRENT_USER",
1307+
Type: types.LongText,
1308+
},
1309+
},
1310+
},
1311+
{
1312+
Query: "SELECT SLEEP(0.5)",
1313+
Expected: []sql.Row{{int(0)}},
1314+
},
1315+
1316+
// Encoding Function Tests
1317+
{
1318+
Query: "SELECT TO_BASE64('foo')",
1319+
Expected: []sql.Row{{string("Zm9v")}},
1320+
},
1321+
{
1322+
Query: "SELECT FROM_BASE64('YmFy')",
1323+
Expected: []sql.Row{{[]byte("bar")}},
1324+
},
1325+
1326+
// Comparison Function Tests
1327+
{
1328+
Query: `SELECT GREATEST(1, 2, "3", 4)`,
1329+
Expected: []sql.Row{{float64(4)}},
1330+
},
1331+
{
1332+
Query: `SELECT GREATEST(1, 2, "9", "foo999")`,
1333+
Expected: []sql.Row{{float64(9)}},
1334+
},
1335+
{
1336+
Query: `SELECT GREATEST("aaa", "bbb", "ccc")`,
1337+
Expected: []sql.Row{{"ccc"}},
1338+
},
1339+
{
1340+
Query: `SELECT GREATEST(i, s) FROM mytable`,
1341+
Expected: []sql.Row{{float64(1)}, {float64(2)}, {float64(3)}},
1342+
},
1343+
{
1344+
Query: `SELECT GREATEST(1, 2, 3, 4)`,
1345+
Expected: []sql.Row{{int64(4)}},
1346+
},
1347+
{
1348+
Query: `SELECT LEAST(1, 2, 3, 4)`,
1349+
Expected: []sql.Row{{int64(1)}},
1350+
},
1351+
{
1352+
Query: `SELECT LEAST(1, 2, "3", 4)`,
1353+
Expected: []sql.Row{{float64(1)}},
1354+
},
1355+
{
1356+
Query: `SELECT LEAST(1, 2, "9", "foo999")`,
1357+
Expected: []sql.Row{{float64(1)}},
1358+
},
1359+
{
1360+
Query: `SELECT LEAST("aaa", "bbb", "ccc")`,
1361+
Expected: []sql.Row{{"aaa"}},
1362+
},
1363+
{
1364+
Query: `SELECT LEAST(i, s) FROM mytable`,
1365+
Expected: []sql.Row{{float64(1)}, {float64(2)}, {float64(3)}},
1366+
},
1367+
{
1368+
Query: `SELECT LEAST(CAST("1920-02-03 07:41:11" AS DATETIME), CAST("1980-06-22 14:32:56" AS DATETIME))`,
1369+
Expected: []sql.Row{{time.Date(1920, 2, 3, 7, 41, 11, 0, time.UTC)}},
1370+
},
1371+
1372+
// Additional Math Function Tests
1373+
{
1374+
Query: "select abs(-i) from mytable order by 1",
1375+
Expected: []sql.Row{{1}, {2}, {3}},
1376+
},
12271377
}

enginetest/queries/queries.go

Lines changed: 0 additions & 138 deletions
Original file line numberDiff line numberDiff line change
@@ -4997,36 +4997,6 @@ SELECT * FROM cte WHERE d = 2;`,
49974997
{23.222},
49984998
},
49994999
},
5000-
{
5001-
Query: `SELECT DATABASE()`,
5002-
Expected: []sql.Row{
5003-
{"mydb"},
5004-
},
5005-
},
5006-
{
5007-
Query: `SELECT USER()`,
5008-
Expected: []sql.Row{
5009-
{"root@localhost"},
5010-
},
5011-
},
5012-
{
5013-
Query: `SELECT CURRENT_USER()`,
5014-
Expected: []sql.Row{
5015-
{"root@localhost"},
5016-
},
5017-
},
5018-
{
5019-
Query: `SELECT CURRENT_USER`,
5020-
Expected: []sql.Row{
5021-
{"root@localhost"},
5022-
},
5023-
ExpectedColumns: sql.Schema{
5024-
{
5025-
Name: "CURRENT_USER",
5026-
Type: types.LongText,
5027-
},
5028-
},
5029-
},
50305000
{
50315001
Query: `SELECT CURRENT_user`,
50325002
Expected: []sql.Row{
@@ -5116,55 +5086,7 @@ SELECT * FROM cte WHERE d = 2;`,
51165086
Query: `SELECT JSON_EXTRACT('"foo"', "$")`,
51175087
Expected: []sql.Row{{types.MustJSON(`"foo"`)}},
51185088
},
5119-
{
5120-
Query: `SELECT JSON_UNQUOTE('"foo"')`,
5121-
Expected: []sql.Row{{"foo"}},
5122-
},
5123-
{
5124-
Query: `SELECT JSON_UNQUOTE('[1, 2, 3]')`,
5125-
Expected: []sql.Row{{"[1, 2, 3]"}},
5126-
},
5127-
{
5128-
Query: `SELECT JSON_UNQUOTE('"\\t\\u0032"')`,
5129-
Expected: []sql.Row{{"\t2"}},
5130-
},
5131-
{
5132-
Query: `SELECT JSON_UNQUOTE('"\t\\u0032"')`,
5133-
Expected: []sql.Row{{"\t2"}},
5134-
},
5135-
{
5136-
Query: `SELECT JSON_UNQUOTE(JSON_EXTRACT('{"xid":"hello"}', '$.xid')) = "hello"`,
5137-
Expected: []sql.Row{{true}},
5138-
},
51395089

5140-
{
5141-
Query: `SELECT JSON_QUOTE('"foo"')`,
5142-
Expected: []sql.Row{{`"\"foo\""`}},
5143-
},
5144-
{
5145-
Query: `SELECT JSON_QUOTE('[1, 2, 3]')`,
5146-
Expected: []sql.Row{{`"[1, 2, 3]"`}},
5147-
},
5148-
{
5149-
Query: `SELECT JSON_QUOTE('"\t\u0032"')`,
5150-
Expected: []sql.Row{{`"\"\tu0032\""`}},
5151-
},
5152-
{
5153-
Query: `SELECT JSON_QUOTE('"\t\\u0032"')`,
5154-
Expected: []sql.Row{{`"\"\t\\u0032\""`}},
5155-
},
5156-
{
5157-
Query: `SELECT JSON_EXTRACT('{"xid":"hello"}', '$.xid') = "hello"`,
5158-
Expected: []sql.Row{{true}},
5159-
},
5160-
{
5161-
Query: `SELECT JSON_EXTRACT('{"xid":"hello"}', '$.xid') = '"hello"'`,
5162-
Expected: []sql.Row{{false}},
5163-
},
5164-
{
5165-
Query: `SELECT JSON_UNQUOTE(JSON_EXTRACT('{"xid":null}', '$.xid'))`,
5166-
Expected: []sql.Row{{"null"}},
5167-
},
51685090
{
51695091
Query: `select JSON_EXTRACT('{"id":234}', '$.id')-1;`,
51705092
Expected: []sql.Row{{float64(233)}},
@@ -5653,18 +5575,6 @@ SELECT * FROM cte WHERE d = 2;`,
56535575
Query: "SELECT instr(s, NULL) as l FROM mytable ORDER BY l",
56545576
Expected: []sql.Row{{nil}, {nil}, {nil}},
56555577
},
5656-
{
5657-
Query: "SELECT SLEEP(0.5)",
5658-
Expected: []sql.Row{{int(0)}},
5659-
},
5660-
{
5661-
Query: "SELECT TO_BASE64('foo')",
5662-
Expected: []sql.Row{{string("Zm9v")}},
5663-
},
5664-
{
5665-
Query: "SELECT FROM_BASE64('YmFy')",
5666-
Expected: []sql.Row{{[]byte("bar")}},
5667-
},
56685578
{
56695579
Query: "SELECT TIMESTAMPADD(DAY, 1, '2018-05-02')",
56705580
Expected: []sql.Row{{"2018-05-03"}},
@@ -5852,30 +5762,6 @@ SELECT * FROM cte WHERE d = 2;`,
58525762
Query: `SELECT GREATEST(@@back_log,@@auto_increment_offset)`,
58535763
Expected: []sql.Row{{1}},
58545764
},
5855-
{
5856-
Query: `SELECT GREATEST(1, 2, "3", 4)`,
5857-
Expected: []sql.Row{{float64(4)}},
5858-
},
5859-
{
5860-
Query: `SELECT GREATEST(1, 2, "9", "foo999")`,
5861-
Expected: []sql.Row{{float64(9)}},
5862-
},
5863-
{
5864-
Query: `SELECT GREATEST("aaa", "bbb", "ccc")`,
5865-
Expected: []sql.Row{{"ccc"}},
5866-
},
5867-
{
5868-
Query: `SELECT GREATEST(i, s) FROM mytable`,
5869-
Expected: []sql.Row{{float64(1)}, {float64(2)}, {float64(3)}},
5870-
},
5871-
{
5872-
Query: `SELECT GREATEST(1, 2, 3, 4)`,
5873-
Expected: []sql.Row{{int64(4)}},
5874-
},
5875-
{
5876-
Query: "select abs(-i) from mytable order by 1",
5877-
Expected: []sql.Row{{1}, {2}, {3}},
5878-
},
58795765
{
58805766
Query: "select distinct abs(c5) as a from one_pk where c2 in (1,11,31) order by a",
58815767
Expected: []sql.Row{{4}, {14}, {34}},
@@ -6032,30 +5918,6 @@ SELECT * FROM cte WHERE d = 2;`,
60325918
Query: `SELECT GREATEST(CAST("1920-02-03 07:41:11" AS DATETIME), CAST("1980-06-22 14:32:56" AS DATETIME))`,
60335919
Expected: []sql.Row{{time.Date(1980, 6, 22, 14, 32, 56, 0, time.UTC)}},
60345920
},
6035-
{
6036-
Query: `SELECT LEAST(1, 2, 3, 4)`,
6037-
Expected: []sql.Row{{int64(1)}},
6038-
},
6039-
{
6040-
Query: `SELECT LEAST(1, 2, "3", 4)`,
6041-
Expected: []sql.Row{{float64(1)}},
6042-
},
6043-
{
6044-
Query: `SELECT LEAST(1, 2, "9", "foo999")`,
6045-
Expected: []sql.Row{{float64(1)}},
6046-
},
6047-
{
6048-
Query: `SELECT LEAST("aaa", "bbb", "ccc")`,
6049-
Expected: []sql.Row{{"aaa"}},
6050-
},
6051-
{
6052-
Query: `SELECT LEAST(i, s) FROM mytable`,
6053-
Expected: []sql.Row{{float64(1)}, {float64(2)}, {float64(3)}},
6054-
},
6055-
{
6056-
Query: `SELECT LEAST(CAST("1920-02-03 07:41:11" AS DATETIME), CAST("1980-06-22 14:32:56" AS DATETIME))`,
6057-
Expected: []sql.Row{{time.Date(1920, 2, 3, 7, 41, 11, 0, time.UTC)}},
6058-
},
60595921
{
60605922
Query: `SELECT LEAST(@@back_log,@@auto_increment_offset)`,
60615923
Expected: []sql.Row{{-1}},

0 commit comments

Comments
 (0)