xref: /sqlite-3.40.0/ext/rtree/rtreeB.test (revision 1917e92f)
1# 2011 March 2
2#
3# The author disclaims copyright to this source code.  In place of
4# a legal notice, here is a blessing:
5#
6#    May you do good and not evil.
7#    May you find forgiveness for yourself and forgive others.
8#    May you share freely, never taking more than you give.
9#
10#***********************************************************************
11# Make sure the rtreenode() testing function can handle entries with
12# 64-bit rowids.
13#
14
15if {![info exists testdir]} {
16  set testdir [file join [file dirname [info script]] .. .. test]
17}
18source [file join [file dirname [info script]] rtree_util.tcl]
19source $testdir/tester.tcl
20ifcapable !rtree { finish_test ; return }
21
22ifcapable rtree_int_only {
23  do_test rtreeB-1.1-intonly {
24    db eval {
25      CREATE VIRTUAL TABLE t1 USING rtree(ii, x0, y0, x1, y1);
26      INSERT INTO t1 VALUES(1073741824, 0.0, 0.0, 100.0, 100.0);
27      INSERT INTO t1 VALUES(2147483646, 0.0, 0.0, 200.0, 200.0);
28      INSERT INTO t1 VALUES(4294967296, 0.0, 0.0, 300.0, 300.0);
29      INSERT INTO t1 VALUES(8589934592, 20.0, 20.0, 150.0, 150.0);
30      INSERT INTO t1 VALUES(9223372036854775807, 150, 150, 400, 400);
31      SELECT rtreenode(2, data) FROM t1_node;
32    }
33  } {{{1073741824 0 0 100 100} {2147483646 0 0 200 200} {4294967296 0 0 300 300} {8589934592 20 20 150 150} {9223372036854775807 150 150 400 400}}}
34} else {
35  do_test rtreeB-1.1 {
36    db eval {
37      CREATE VIRTUAL TABLE t1 USING rtree(ii, x0, y0, x1, y1);
38      INSERT INTO t1 VALUES(1073741824, 0.0, 0.0, 100.0, 100.0);
39      INSERT INTO t1 VALUES(2147483646, 0.0, 0.0, 200.0, 200.0);
40      INSERT INTO t1 VALUES(4294967296, 0.0, 0.0, 300.0, 300.0);
41      INSERT INTO t1 VALUES(8589934592, 20.0, 20.0, 150.0, 150.0);
42      INSERT INTO t1 VALUES(9223372036854775807, 150, 150, 400, 400);
43      SELECT rtreenode(2, data) FROM t1_node;
44    }
45  } {{{1073741824 0 0 100 100} {2147483646 0 0 200 200} {4294967296 0 0 300 300} {8589934592 20 20 150 150} {9223372036854775807 150 150 400 400}}}
46}
47
48do_rtree_integrity_test rtreeB-1.2 t1
49
50finish_test
51