1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
# name: test/extension/test_alias_point.test
# description: Enable Test alias for point.
# group: [extension]
require skip_reload
require notmingw
require allow_unsigned_extensions
statement ok
PRAGMA enable_verification
statement ok
LOAD '__BUILD_DIRECTORY__/test/extension/loadable_extension_demo.duckdb_extension';
statement ok
CREATE TABLE points(i INTEGER, point POINT, pt STRUCT(i INTEGER, j INTEGER));
statement ok
INSERT INTO points VALUES (2, ({'x': 1, 'y': 2}), ({'i': 3, 'j': 1}));
statement ok
INSERT INTO points VALUES (3, ({'x': 2, 'y': 3}), ({'i': 5, 'j': 4}));
query III
SELECT * FROM points;
----
2 {'x': 1, 'y': 2} {'i': 3, 'j': 1}
3 {'x': 2, 'y': 3} {'i': 5, 'j': 4}
query I
SELECT add_point(({'x': 2, 'y': 3})::POINT, ({'x': 3, 'y': 4})::POINT)
----
{'x': 5, 'y': 7}
query I
SELECT sub_point(({'x': 2, 'y': 3})::POINT, ({'x': 3, 'y': 4})::POINT)
----
{'x': -1, 'y': -1}
statement error
SELECT add_point(pt, pt) from points;
----
<REGEX>:Binder Error:.*No function matches.*
statement error
SELECT sub_point(pt, pt) from points;
----
<REGEX>:Binder Error:.*No function matches.*
query I
SELECT add_point(point, point) from points;
----
{'x': 2, 'y': 4}
{'x': 4, 'y': 6}
query I
SELECT sub_point(point, point) from points;
----
{'x': 0, 'y': 0}
{'x': 0, 'y': 0}
query I
SELECT add_point(point, ({'x': 3, 'y': 4})::POINT) from points;
----
{'x': 4, 'y': 6}
{'x': 5, 'y': 7}
query I
SELECT sub_point(point, ({'x': 3, 'y': 4})::POINT) from points;
----
{'x': -2, 'y': -2}
{'x': -1, 'y': -1}
statement ok
INSERT INTO points VALUES (4, NULL, NULL);
statement ok
INSERT INTO points VALUES (5, ({'x': 54, 'y': 23}), ({'i': 10, 'j': 100}));
query I
SELECT add_point(point, point) from points;
----
{'x': 2, 'y': 4}
{'x': 4, 'y': 6}
NULL
{'x': 108, 'y': 46}
query I
SELECT sub_point(point, point) from points;
----
{'x': 0, 'y': 0}
{'x': 0, 'y': 0}
NULL
{'x': 0, 'y': 0}
query I
SELECT add_point(point, NULL::POINT) from points;
----
NULL
NULL
NULL
NULL
query I
SELECT sub_point(point, NULL::POINT) from points;
----
NULL
NULL
NULL
NULL
|