|
1 # 2007 July 27 |
|
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 # This file implements regression tests for SQLite library. The focus |
|
12 # of this script is testing the FTS1 module, specifically snippet |
|
13 # generation. Extracted from fts2o.test. |
|
14 # |
|
15 # $Id: fts1m.test,v 1.1 2007/07/25 00:25:20 shess Exp $ |
|
16 # |
|
17 |
|
18 set testdir [file dirname $argv0] |
|
19 source $testdir/tester.tcl |
|
20 |
|
21 # If SQLITE_ENABLE_FTS1 is not defined, omit this file. |
|
22 ifcapable !fts1 { |
|
23 finish_test |
|
24 return |
|
25 } |
|
26 |
|
27 #--------------------------------------------------------------------- |
|
28 # These tests, fts1m-1.*, test that ticket #2429 is fixed. |
|
29 # |
|
30 db eval { |
|
31 CREATE VIRTUAL TABLE t1 USING fts1(a, b, c); |
|
32 INSERT INTO t1(a, b, c) VALUES('one three four', 'one four', 'one four two'); |
|
33 } |
|
34 do_test fts1m-1.1 { |
|
35 execsql { |
|
36 SELECT rowid, snippet(t1) FROM t1 WHERE c MATCH 'four'; |
|
37 } |
|
38 } {1 {one <b>four</b> two}} |
|
39 do_test fts1m-1.2 { |
|
40 execsql { |
|
41 SELECT rowid, snippet(t1) FROM t1 WHERE b MATCH 'four'; |
|
42 } |
|
43 } {1 {one <b>four</b>}} |
|
44 do_test fts1m-1.3 { |
|
45 execsql { |
|
46 SELECT rowid, snippet(t1) FROM t1 WHERE a MATCH 'four'; |
|
47 } |
|
48 } {1 {one three <b>four</b>}} |
|
49 |
|
50 finish_test |