Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fix discrepency in the test pointed out by a user. Was testing fts2 :-). (CVS 4348) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
65c62ed85edd2cb3cf26f01fadf3b342 |
User & Date: | shess 2007-08-30 20:01:33.000 |
Context
2007-08-30
| ||
20:09 | Fix the loadable extension module so that it will compile with SQLITE_THREADSAFE=0. (CVS 4349) (check-in: a73a8b50f7 user: drh tags: trunk) | |
20:01 | Fix discrepency in the test pointed out by a user. Was testing fts2 :-). (CVS 4348) (check-in: 65c62ed85e user: shess tags: trunk) | |
19:56 | Fix memory leak reported by an fts1 user. Was losing a doclist on a query error. (CVS 4347) (check-in: eee0250249 user: shess tags: trunk) | |
Changes
Changes to test/fts1o.test.
︙ | ︙ | |||
8 9 10 11 12 13 14 | # May you share freely, never taking more than you give. # #************************************************************************* # This file implements regression tests for SQLite library. The focus # of this script is testing the FTS1 module rename functionality. Mostly # copied from fts2o.test. # | | | | | | | > > > > | | | | 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 | # May you share freely, never taking more than you give. # #************************************************************************* # This file implements regression tests for SQLite library. The focus # of this script is testing the FTS1 module rename functionality. Mostly # copied from fts2o.test. # # $Id: fts1o.test,v 1.2 2007/08/30 20:01:33 shess Exp $ # set testdir [file dirname $argv0] source $testdir/tester.tcl # If SQLITE_ENABLE_FTS1 is not defined, omit this file. ifcapable !fts1 { finish_test return } db eval { CREATE VIRTUAL TABLE t1 USING fts1(a, b, c); INSERT INTO t1(a, b, c) VALUES('one three four', 'one four', 'one four two'); } #--------------------------------------------------------------------- # Test that it is possible to rename an fts1 table. # do_test fts1o-1.1 { execsql { SELECT tbl_name FROM sqlite_master WHERE type = 'table'} } {t1 t1_content t1_term} do_test fts1o-1.2 { execsql { ALTER TABLE t1 RENAME to fts_t1; } } {} do_test fts1o-1.3 { execsql { SELECT rowid, snippet(fts_t1) FROM fts_t1 WHERE a MATCH 'four'; } } {1 {one three <b>four</b>}} do_test fts1o-1.4 { execsql { SELECT tbl_name FROM sqlite_master WHERE type = 'table'} } {fts_t1 fts_t1_content fts_t1_term} # See what happens when renaming the fts1 table fails. # do_test fts1o-2.1 { catchsql { CREATE TABLE t1_term(a, b, c); ALTER TABLE fts_t1 RENAME to t1; } } {1 {SQL logic error or missing database}} do_test fts1o-2.2 { execsql { SELECT rowid, snippet(fts_t1) FROM fts_t1 WHERE a MATCH 'four'; } } {1 {one three <b>four</b>}} do_test fts1o-2.3 { execsql { SELECT tbl_name FROM sqlite_master WHERE type = 'table'} } {fts_t1 fts_t1_content fts_t1_term t1_term} # See what happens when renaming the fts1 table fails inside a transaction. # do_test fts1o-3.1 { execsql { BEGIN; INSERT INTO fts_t1(a, b, c) VALUES('one two three', 'one four', 'one two'); } } {} do_test fts1o-3.2 { catchsql { ALTER TABLE fts_t1 RENAME to t1; } } {1 {SQL logic error or missing database}} # NOTE(shess) rowid AS rowid to defeat caching. Otherwise, this # seg-faults, I suspect that there's something up with a stale # virtual-table reference, but I'm not quite sure how it happens here # but not for fts2o.test. do_test fts1o-3.3 { execsql { SELECT rowid AS rowid, snippet(fts_t1) FROM fts_t1 WHERE a MATCH 'four'; } } {1 {one three <b>four</b>}} do_test fts1o-3.4 { execsql { SELECT tbl_name FROM sqlite_master WHERE type = 'table'} } {fts_t1 fts_t1_content fts_t1_term t1_term} do_test fts1o-3.5 { execsql COMMIT execsql {SELECT a FROM fts_t1} } {{one three four} {one two three}} do_test fts1o-3.6 { execsql { SELECT a, b, c FROM fts_t1 WHERE c MATCH 'four'; } } {{one three four} {one four} {one four two}} #--------------------------------------------------------------------- # Test that it is possible to rename an fts1 table in an attached # database. # file delete -force test2.db test2.db-journal do_test fts1o-4.1 { execsql { DROP TABLE t1_term; ALTER TABLE fts_t1 RENAME to t1; SELECT a, b, c FROM t1 WHERE c MATCH 'two'; } } {{one three four} {one four} {one four two} {one two three} {one four} {one two}} do_test fts1o-4.2 { execsql { |
︙ | ︙ |