1e62c2fe1Sdrh# 2016-05-32 2e62c2fe1Sdrh# 3e62c2fe1Sdrh# The author disclaims copyright to this source code. In place of 4e62c2fe1Sdrh# a legal notice, here is a blessing: 5e62c2fe1Sdrh# 6e62c2fe1Sdrh# May you do good and not evil. 7e62c2fe1Sdrh# May you find forgiveness for yourself and forgive others. 8e62c2fe1Sdrh# May you share freely, never taking more than you give. 9e62c2fe1Sdrh# 10e62c2fe1Sdrh#*********************************************************************** 11e62c2fe1Sdrh# This file contains tests for the r-tree module. 12e62c2fe1Sdrh# 13e62c2fe1Sdrh# Verify that no invalid SQL is run during initialization 14e62c2fe1Sdrh 15e62c2fe1Sdrhif {![info exists testdir]} { 16e62c2fe1Sdrh set testdir [file join [file dirname [info script]] .. .. test] 17e62c2fe1Sdrh} 181917e92fSdansource [file join [file dirname [info script]] rtree_util.tcl] 19e62c2fe1Sdrhsource $testdir/tester.tcl 20e62c2fe1Sdrhifcapable !rtree { finish_test ; return } 21e62c2fe1Sdrh 22e62c2fe1Sdrhdb close 23e62c2fe1Sdrhsqlite3_shutdown 24e62c2fe1Sdrhtest_sqlite3_log [list lappend ::log] 25e62c2fe1Sdrhset ::log [list] 26e62c2fe1Sdrhsqlite3 db test.db 27e62c2fe1Sdrh 28e62c2fe1Sdrh 29e62c2fe1Sdrhset ::log {} 30f1e2c8e1Sdrhdo_execsql_test rtreeG-1.1 { 31f1e2c8e1Sdrh CREATE VIRTUAL TABLE t1 USING rtree(id,x0,x1,y0,y1); 32f1e2c8e1Sdrh} {} 33f1e2c8e1Sdrhdo_test rtreeG-1.1log { 34e62c2fe1Sdrh set ::log 35e62c2fe1Sdrh} {} 36e62c2fe1Sdrh 37f1e2c8e1Sdrhdo_execsql_test rtreeG-1.2 { 38f1e2c8e1Sdrh INSERT INTO t1 VALUES(1,10,15,5,23),(2,20,21,5,23),(3,10,15,20,30); 39f1e2c8e1Sdrh SELECT id from t1 WHERE x0>8 AND x1<16 AND y0>2 AND y1<25; 40f1e2c8e1Sdrh} {1} 411917e92fSdando_rtree_integrity_test rtreeG-1.2.integrity t1 42f1e2c8e1Sdrhdo_test rtreeG-1.2log { 43f1e2c8e1Sdrh set ::log 44f1e2c8e1Sdrh} {} 45f1e2c8e1Sdrh 46f1e2c8e1Sdrhdb close 47f1e2c8e1Sdrhsqlite3 db test.db 48f1e2c8e1Sdrhdo_execsql_test rtreeG-1.3 { 49f1e2c8e1Sdrh SELECT id from t1 WHERE x0>8 AND x1<16 AND y0>2 AND y1<25; 50f1e2c8e1Sdrh} {1} 51f1e2c8e1Sdrhdo_test rtreeG-1.3log { 52f1e2c8e1Sdrh set ::log 53f1e2c8e1Sdrh} {} 54f1e2c8e1Sdrh 55f1e2c8e1Sdrhdo_execsql_test rtreeG-1.4 { 56f1e2c8e1Sdrh DROP TABLE t1; 57f1e2c8e1Sdrh} {} 58f1e2c8e1Sdrhdo_test rtreeG-1.4log { 59f1e2c8e1Sdrh set ::log 60f1e2c8e1Sdrh} {} 61f1e2c8e1Sdrh 62*eab0e103Sdanexpand_all_sql db 63f1e2c8e1Sdrhdb close 64f1e2c8e1Sdrhsqlite3_shutdown 65f1e2c8e1Sdrhtest_sqlite3_log 66f1e2c8e1Sdrhsqlite3_initialize 67f1e2c8e1Sdrhsqlite3 db test.db 68f1e2c8e1Sdrh 69e62c2fe1Sdrhfinish_test 70