1*6b6ab133Sshess# 2007 April 9 2*6b6ab133Sshess# 3*6b6ab133Sshess# The author disclaims copyright to this source code. 4*6b6ab133Sshess# 5*6b6ab133Sshess#************************************************************************* 6*6b6ab133Sshess# This file implements regression tests for SQLite library. fts2 7*6b6ab133Sshess# DELETE handling assumed all fields were non-null. This was not 8*6b6ab133Sshess# the intention at all. 9*6b6ab133Sshess# 10*6b6ab133Sshess# $Id: fts2m.test,v 1.1 2007/04/09 20:45:42 shess Exp $ 11*6b6ab133Sshess# 12*6b6ab133Sshess 13*6b6ab133Sshessset testdir [file dirname $argv0] 14*6b6ab133Sshesssource $testdir/tester.tcl 15*6b6ab133Sshess 16*6b6ab133Sshess# If SQLITE_ENABLE_FTS2 is defined, omit this file. 17*6b6ab133Sshessifcapable !fts2 { 18*6b6ab133Sshess finish_test 19*6b6ab133Sshess return 20*6b6ab133Sshess} 21*6b6ab133Sshess 22*6b6ab133Sshessdb eval { 23*6b6ab133Sshess CREATE VIRTUAL TABLE t1 USING fts2(col_a, col_b); 24*6b6ab133Sshess 25*6b6ab133Sshess INSERT INTO t1(rowid, col_a, col_b) VALUES(1, 'testing', 'testing'); 26*6b6ab133Sshess INSERT INTO t1(rowid, col_a, col_b) VALUES(2, 'only a', null); 27*6b6ab133Sshess INSERT INTO t1(rowid, col_a, col_b) VALUES(3, null, 'only b'); 28*6b6ab133Sshess INSERT INTO t1(rowid, col_a, col_b) VALUES(4, null, null); 29*6b6ab133Sshess} 30*6b6ab133Sshess 31*6b6ab133Sshessdo_test fts2m-1.0 { 32*6b6ab133Sshess execsql { 33*6b6ab133Sshess SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1; 34*6b6ab133Sshess } 35*6b6ab133Sshess} {2 2 4} 36*6b6ab133Sshess 37*6b6ab133Sshessdo_test fts2m-1.1 { 38*6b6ab133Sshess execsql { 39*6b6ab133Sshess DELETE FROM t1 WHERE rowid = 1; 40*6b6ab133Sshess SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1; 41*6b6ab133Sshess } 42*6b6ab133Sshess} {1 1 3} 43*6b6ab133Sshess 44*6b6ab133Sshessdo_test fts2m-1.2 { 45*6b6ab133Sshess execsql { 46*6b6ab133Sshess DELETE FROM t1 WHERE rowid = 2; 47*6b6ab133Sshess SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1; 48*6b6ab133Sshess } 49*6b6ab133Sshess} {0 1 2} 50*6b6ab133Sshess 51*6b6ab133Sshessdo_test fts2m-1.3 { 52*6b6ab133Sshess execsql { 53*6b6ab133Sshess DELETE FROM t1 WHERE rowid = 3; 54*6b6ab133Sshess SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1; 55*6b6ab133Sshess } 56*6b6ab133Sshess} {0 0 1} 57*6b6ab133Sshess 58*6b6ab133Sshessdo_test fts2m-1.4 { 59*6b6ab133Sshess execsql { 60*6b6ab133Sshess DELETE FROM t1 WHERE rowid = 4; 61*6b6ab133Sshess SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1; 62*6b6ab133Sshess } 63*6b6ab133Sshess} {0 0 0} 64*6b6ab133Sshess 65*6b6ab133Sshessfinish_test 66