AryaWu/sqlite
0
1# 2007 April 92#3# The author disclaims copyright to this source code.4#5#*************************************************************************6# This file implements regression tests for SQLite library. fts37# DELETE handling assumed all fields were non-null. This was not8# the intention at all.9#10# $Id: fts3am.test,v 1.1 2007/08/20 17:38:42 shess Exp $11#12 13set testdir [file dirname $argv0]14source $testdir/tester.tcl15 16# If SQLITE_ENABLE_FTS3 is defined, omit this file.17ifcapable !fts3 {18 finish_test19 return20}21 22db eval {23 CREATE VIRTUAL TABLE t1 USING fts3(col_a, col_b);24 25 INSERT INTO t1(rowid, col_a, col_b) VALUES(1, 'testing', 'testing');26 INSERT INTO t1(rowid, col_a, col_b) VALUES(2, 'only a', null);27 INSERT INTO t1(rowid, col_a, col_b) VALUES(3, null, 'only b');28 INSERT INTO t1(rowid, col_a, col_b) VALUES(4, null, null);29}30 31do_test fts3am-1.0 {32 execsql {33 SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1;34 }35} {2 2 4}36 37do_test fts3am-1.1 {38 execsql {39 DELETE FROM t1 WHERE rowid = 1;40 SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1;41 }42} {1 1 3}43 44do_test fts3am-1.2 {45 execsql {46 DELETE FROM t1 WHERE rowid = 2;47 SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1;48 }49} {0 1 2}50 51do_test fts3am-1.3 {52 execsql {53 DELETE FROM t1 WHERE rowid = 3;54 SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1;55 }56} {0 0 1}57 58do_test fts3am-1.4 {59 execsql {60 DELETE FROM t1 WHERE rowid = 4;61 SELECT COUNT(col_a), COUNT(col_b), COUNT(*) FROM t1;62 }63} {0 0 0}64 65finish_test66 