112 lines
19 KiB
Plaintext
112 lines
19 KiB
Plaintext
# Unit tests for moving regions as relation attributes
|
|
|
|
###############################################################################
|
|
|
|
create database mratest;
|
|
open database mratest;
|
|
|
|
###############################################################################
|
|
|
|
(let rel1 =
|
|
((rel (tuple ((id int) (name string) (mp mpoint) (mr movingregion))))
|
|
((1 "aaa"
|
|
(((0.0 10.0 TRUE FALSE)
|
|
(75.0 -25.0 75.0 175.0)))
|
|
(((0.0 10.0 TRUE FALSE)
|
|
(((( 0.0 0.0 50.0 50.0)
|
|
( 0.0 100.0 50.0 150.0)
|
|
(100.0 100.0 150.0 150.0)
|
|
(100.0 0.0 150.0 50.0))
|
|
(( 25.0 25.0 75.0 75.0)
|
|
( 25.0 75.0 75.0 125.0)
|
|
( 75.0 75.0 125.0 125.0)
|
|
( 75.0 25.0 125.0 75.0)))))))
|
|
(2 "bbb"
|
|
(((0.0 10.0 TRUE FALSE)
|
|
(275.0 -25.0 275.0 175.0)))
|
|
(((0.0 10.0 TRUE FALSE)
|
|
((((200.0 0.0 250.0 50.0)
|
|
(200.0 100.0 250.0 150.0)
|
|
(300.0 100.0 350.0 150.0)
|
|
(300.0 0.0 350.0 50.0))
|
|
((225.0 25.0 275.0 75.0)
|
|
(225.0 75.0 275.0 125.0)
|
|
(275.0 75.0 325.0 125.0)
|
|
(275.0 25.0 325.0 75.0)))))))
|
|
(3 "ccc"
|
|
(((0.0 10.0 TRUE FALSE)
|
|
(475.0 -25.0 475.0 175.0)))
|
|
(((0.0 10.0 TRUE FALSE)
|
|
((((400.0 0.0 450.0 50.0)
|
|
(400.0 100.0 450.0 150.0)
|
|
(500.0 100.0 550.0 150.0)
|
|
(500.0 0.0 550.0 50.0))
|
|
((425.0 25.0 475.0 75.0)
|
|
(425.0 75.0 475.0 125.0)
|
|
(475.0 75.0 525.0 125.0)
|
|
(475.0 25.0 525.0 75.0))))))))));
|
|
|
|
let mr1 =
|
|
[ const movingregion value
|
|
(((0.0 10.0 TRUE FALSE)
|
|
((((-25.0 25.0 -25.0 50.0)
|
|
(575.0 25.0 575.0 50.0)
|
|
(575.0 50.0 575.0 75.0)
|
|
(-25.0 50.0 -25.0 75.0)))))) ];
|
|
|
|
let mp1 =
|
|
[ const mpoint value (((0.0 10.0 TRUE FALSE) (-25.0 75.0 575.0 75.0))) ];
|
|
|
|
###############################################################################
|
|
|
|
#testcase "1"
|
|
#tolerance_real 0.00000001
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0))))))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0))))))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))))))
|
|
query rel1;
|
|
|
|
#testcase "2"
|
|
#tolerance_real 0.00000001
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion) (new movingregion)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0)))))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (-25.0 25.0 -25.0 50.0) (575.0 25.0 575.0 50.0) (575.0 50.0 575.0 75.0) (-25.0 50.0 -25.0 75.0))))))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0)))))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (-25.0 25.0 -25.0 50.0) (575.0 25.0 575.0 50.0) (575.0 50.0 575.0 75.0) (-25.0 50.0 -25.0 75.0))))))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (-25.0 25.0 -25.0 50.0) (575.0 25.0 575.0 50.0) (575.0 50.0 575.0 75.0) (-25.0 50.0 -25.0 75.0)))))))))
|
|
query rel1 feed extend[new: mr1] consume;
|
|
|
|
#testcase "3"
|
|
#tolerance_real 0.00000001
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion) (new mpoint)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0)))))) ( ( ("2000-01-04-16:00" "2000-01-06-08:00" TRUE TRUE) (75.0 8.333333333333332 75.0 41.66666666666666)) ( ("2000-01-09-16:00" "2000-01-11-08:00" TRUE TRUE) (75.0 108.3333333333333 75.0 141.6666666666667)))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0)))))) ( ( ("2000-01-04-16:00" "2000-01-06-08:00" TRUE TRUE) (275.0 8.333333333333332 275.0 41.66666666666666)) ( ("2000-01-09-16:00" "2000-01-11-08:00" TRUE TRUE) (275.0 108.3333333333333 275.0 141.6666666666667)))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))) ( ( ("2000-01-04-16:00" "2000-01-06-08:00" TRUE TRUE) (475.0 8.333333333333332 475.0 41.66666666666666)) ( ("2000-01-09-16:00" "2000-01-11-08:00" TRUE TRUE) (475.0 108.3333333333333 475.0 141.6666666666667))))))
|
|
query rel1 feed extend[new: intersection(.mp, .mr)] consume;
|
|
|
|
#testcase "4"
|
|
#tolerance_real 0.00000001
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion) (new mpoint)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0)))))) ( ( ("2000-01-05-20:34:17.143" "2000-01-07-06:51:25.714" TRUE TRUE) (75.0 32.14285714285714 75.0 60.71428571428571)))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0)))))) ( ( ("2000-01-05-20:34:17.143" "2000-01-07-06:51:25.714" TRUE TRUE) (275.0 32.14285714285714 275.0 60.71428571428571)))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))) ( ( ("2000-01-05-20:34:17.143" "2000-01-07-06:51:25.714" TRUE TRUE) (475.0 32.14285714285714 475.0 60.71428571428571))))))
|
|
query rel1 feed extend[new: intersection(.mp, mr1)] consume;
|
|
|
|
#testcase "5"
|
|
#tolerance_real 0.00000001
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion) (new mpoint)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0)))))) ( ( ("2000-01-03-10:54:32.727" "2000-01-03-21:49:05.455" TRUE TRUE) (2.272727272727273 75.0 29.54545454545455 75.0)) ( ("2000-01-04-19:38:10.909" "2000-01-05-06:32:43.636" TRUE TRUE) (84.09090909090909 75.0 111.3636363636364 75.0)))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0)))))) ( ( ("2000-01-07-02:10:54.545" "2000-01-07-13:05:27.273" TRUE TRUE) (220.4545454545455 75.0 247.7272727272727 75.0)) ( ("2000-01-08-10:54:32.727" "2000-01-08-21:49:05.455" TRUE TRUE) (302.2727272727273 75.0 329.5454545454546 75.0)))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))) ( ( ("2000-01-10-17:27:16.364" "2000-01-11-04:21:49.091" TRUE TRUE) (438.6363636363636 75.0 465.9090909090909 75.0)) ( ("2000-01-12-02:10:54.545" "2000-01-12-13:05:27.273" TRUE TRUE) (520.4545454545454 75.0 547.7272727272727 75.0))))))
|
|
query rel1 feed extend[new: intersection(mp1, .mr)] consume;
|
|
|
|
#testcase "6"
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion) (new mbool)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0)))))) ( ( ("2000-01-03" "2000-01-04-16:00" TRUE FALSE) FALSE) ( ("2000-01-04-16:00" "2000-01-06-08:00" TRUE TRUE) TRUE) ( ("2000-01-06-08:00" "2000-01-09-16:00" FALSE FALSE) FALSE) ( ("2000-01-09-16:00" "2000-01-11-08:00" TRUE TRUE) TRUE) ( ("2000-01-11-08:00" "2000-01-13" FALSE FALSE) FALSE))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0)))))) ( ( ("2000-01-03" "2000-01-04-16:00" TRUE FALSE) FALSE) ( ("2000-01-04-16:00" "2000-01-06-08:00" TRUE TRUE) TRUE) ( ("2000-01-06-08:00" "2000-01-09-16:00" FALSE FALSE) FALSE) ( ("2000-01-09-16:00" "2000-01-11-08:00" TRUE TRUE) TRUE) ( ("2000-01-11-08:00" "2000-01-13" FALSE FALSE) FALSE))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))) ( ( ("2000-01-03" "2000-01-04-16:00" TRUE FALSE) FALSE) ( ("2000-01-04-16:00" "2000-01-06-08:00" TRUE TRUE) TRUE) ( ("2000-01-06-08:00" "2000-01-09-16:00" FALSE FALSE) FALSE) ( ("2000-01-09-16:00" "2000-01-11-08:00" TRUE TRUE) TRUE) ( ("2000-01-11-08:00" "2000-01-13" FALSE FALSE) FALSE)))))
|
|
query rel1 feed extend[new: .mp inside .mr] consume;
|
|
|
|
#testcase "7"
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion) (new mbool)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0)))))) ( ( ("2000-01-03" "2000-01-05-20:34:17.143" TRUE FALSE) FALSE) ( ("2000-01-05-20:34:17.143" "2000-01-07-06:51:25.714" TRUE TRUE) TRUE) ( ("2000-01-07-06:51:25.714" "2000-01-13" FALSE FALSE) FALSE))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0)))))) ( ( ("2000-01-03" "2000-01-05-20:34:17.143" TRUE FALSE) FALSE) ( ("2000-01-05-20:34:17.143" "2000-01-07-06:51:25.714" TRUE TRUE) TRUE) ( ("2000-01-07-06:51:25.714" "2000-01-13" FALSE FALSE) FALSE))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))) ( ( ("2000-01-03" "2000-01-05-20:34:17.143" TRUE FALSE) FALSE) ( ("2000-01-05-20:34:17.143" "2000-01-07-06:51:25.714" TRUE TRUE) TRUE) ( ("2000-01-07-06:51:25.714" "2000-01-13" FALSE FALSE) FALSE)))))
|
|
query rel1 feed extend[new: .mp inside mr1] consume;
|
|
|
|
#testcase "8"
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion) (new mbool)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0)))))) ( ( ("2000-01-03" "2000-01-03-10:54:32.727" TRUE FALSE) FALSE) ( ("2000-01-03-10:54:32.727" "2000-01-03-21:49:05.455" TRUE TRUE) TRUE) ( ("2000-01-03-21:49:05.455" "2000-01-04-19:38:10.909" FALSE FALSE) FALSE) ( ("2000-01-04-19:38:10.909" "2000-01-05-06:32:43.636" TRUE TRUE) TRUE) ( ("2000-01-05-06:32:43.636" "2000-01-13" FALSE FALSE) FALSE))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0)))))) ( ( ("2000-01-03" "2000-01-07-02:10:54.545" TRUE FALSE) FALSE) ( ("2000-01-07-02:10:54.545" "2000-01-07-13:05:27.273" TRUE TRUE) TRUE) ( ("2000-01-07-13:05:27.273" "2000-01-08-10:54:32.727" FALSE FALSE) FALSE) ( ("2000-01-08-10:54:32.727" "2000-01-08-21:49:05.455" TRUE TRUE) TRUE) ( ("2000-01-08-21:49:05.455" "2000-01-13" FALSE FALSE) FALSE))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))) ( ( ("2000-01-03" "2000-01-10-17:27:16.364" TRUE FALSE) FALSE) ( ("2000-01-10-17:27:16.364" "2000-01-11-04:21:49.091" TRUE TRUE) TRUE) ( ("2000-01-11-04:21:49.091" "2000-01-12-02:10:54.545" FALSE FALSE) FALSE) ( ("2000-01-12-02:10:54.545" "2000-01-12-13:05:27.273" TRUE TRUE) TRUE) ( ("2000-01-12-13:05:27.273" "2000-01-13" FALSE FALSE) FALSE)))))
|
|
query rel1 feed extend[new: mp1 inside .mr] consume;
|
|
|
|
#testcase "9"
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion) (new intimeregion)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0)))))) ("2000-01-08" ( ( ( (125.0 25.0) (25.0 25.0) (25.0 125.0) (125.0 125.0)) ( (100.0 50.0) (50.0 50.0) (50.0 100.0) (100.0 100.0)))))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0)))))) ("2000-01-08" ( ( ( (325.0 25.0) (225.0 25.0) (225.0 125.0) (325.0 125.0)) ( (300.0 50.0) (250.0 50.0) (250.0 100.0) (300.0 100.0)))))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))) ("2000-01-08" ( ( ( (525.0 25.0) (425.0 25.0) (425.0 125.0) (525.0 125.0)) ( (500.0 50.0) (450.0 50.0) (450.0 100.0) (500.0 100.0))))))))
|
|
query rel1 feed extend[new: .mr atinstant [const instant value 5.0]] consume;
|
|
|
|
#testcase "10"
|
|
#yields ( (rel (tuple ( (id int) (name string) (mp mpoint) (mr movingregion) (new intimeregion)))) ( (1 "aaa" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (75.0 -25.0 75.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (0.0 0.0 50.0 50.0) (0.0 100.0 50.0 150.0) (100.0 100.0 150.0 150.0) (100.0 0.0 150.0 50.0)) ( (25.0 25.0 75.0 75.0) (25.0 75.0 75.0 125.0) (75.0 75.0 125.0 125.0) (75.0 25.0 125.0 75.0)))))) ("2000-01-08" ( ( ( (575.0 37.5) (-25.0 37.5) (-25.0 62.5) (575.0 62.5)))))) (2 "bbb" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (275.0 -25.0 275.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (200.0 0.0 250.0 50.0) (200.0 100.0 250.0 150.0) (300.0 100.0 350.0 150.0) (300.0 0.0 350.0 50.0)) ( (225.0 25.0 275.0 75.0) (225.0 75.0 275.0 125.0) (275.0 75.0 325.0 125.0) (275.0 25.0 325.0 75.0)))))) ("2000-01-08" ( ( ( (575.0 37.5) (-25.0 37.5) (-25.0 62.5) (575.0 62.5)))))) (3 "ccc" ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) (475.0 -25.0 475.0 175.0))) ( ( ("2000-01-03" "2000-01-13" TRUE FALSE) ( ( ( (400.0 0.0 450.0 50.0) (400.0 100.0 450.0 150.0) (500.0 100.0 550.0 150.0) (500.0 0.0 550.0 50.0)) ( (425.0 25.0 475.0 75.0) (425.0 75.0 475.0 125.0) (475.0 75.0 525.0 125.0) (475.0 25.0 525.0 75.0)))))) ("2000-01-08" ( ( ( (575.0 37.5) (-25.0 37.5) (-25.0 62.5) (575.0 62.5))))))))
|
|
query rel1 feed extend[new: mr1 atinstant [const instant value 5.0]] consume;
|
|
|
|
|
|
###############################################################################
|
|
|
|
#teardown
|
|
close database;
|
|
delete database mratest; |