| Index: third_party/sqlite/src/ext/fts5/test/fts5config.test | 
| diff --git a/third_party/sqlite/src/ext/fts5/test/fts5config.test b/third_party/sqlite/src/ext/fts5/test/fts5config.test | 
| index dcda2d42a677d315908b83cf06fe28426048875b..386d112e7daf3c591d8da3c5111f2e982596c04d 100644 | 
| --- a/third_party/sqlite/src/ext/fts5/test/fts5config.test | 
| +++ b/third_party/sqlite/src/ext/fts5/test/fts5config.test | 
| @@ -44,6 +44,8 @@ foreach {tn opt} { | 
| 3 {prefix='$'} | 
| 4 {prefix='1,2,'} | 
| 5 {prefix=',1'} | 
| +  6 {prefix='1,2,3...'} | 
| +  7 {prefix='1,2,3xyz'} | 
| } { | 
| set res [list 1 {malformed prefix=... directive}] | 
| do_catchsql_test 2.$tn "CREATE VIRTUAL TABLE f1 USING fts5(x, $opt)" $res | 
| @@ -159,6 +161,8 @@ do_catchsql_test 8.1 { | 
| #   9.1.* 'pgsz' options. | 
| #   9.2.* 'automerge' options. | 
| #   9.3.* 'crisismerge' options. | 
| +#   9.4.* a non-existant option. | 
| +#   9.5.* 'hashsize' options. | 
| # | 
| do_execsql_test 9.0 { | 
| CREATE VIRTUAL TABLE abc USING fts5(a, b); | 
| @@ -203,6 +207,16 @@ do_catchsql_test 9.4.1 { | 
| INSERT INTO abc(abc, rank) VALUES('nosuchoption', 1); | 
| } {1 {SQL logic error or missing database}} | 
|  | 
| +do_catchsql_test 9.5.1 { | 
| +  INSERT INTO abc(abc, rank) VALUES('hashsize', 'not an integer'); | 
| +} {1 {SQL logic error or missing database}} | 
| +do_catchsql_test 9.5.2 { | 
| +  INSERT INTO abc(abc, rank) VALUES('hashsize', -500000); | 
| +} {1 {SQL logic error or missing database}} | 
| +do_catchsql_test 9.5.3 { | 
| +  INSERT INTO abc(abc, rank) VALUES('hashsize', 500000); | 
| +} {0 {}} | 
| + | 
| #------------------------------------------------------------------------- | 
| # Too many prefix indexes. Maximum allowed is 31. | 
| # | 
| @@ -214,5 +228,40 @@ foreach {tn spec} { | 
| do_catchsql_test 10.$tn $sql {1 {too many prefix indexes (max 31)}} | 
| } | 
|  | 
| +#------------------------------------------------------------------------- | 
| +# errors in the detail= option. | 
| +# | 
| +foreach {tn opt} { | 
| +  1 {detail=x} | 
| +  2 {detail='x'} | 
| +  3 {detail='$'} | 
| +  4 {detail='1,2,'} | 
| +  5 {detail=',1'} | 
| +  6 {detail=''} | 
| +} { | 
| +  set res [list 1 {malformed detail=... directive}] | 
| +  do_catchsql_test 11.$tn "CREATE VIRTUAL TABLE f1 USING fts5(x, $opt)" $res | 
| +} | 
| + | 
| +do_catchsql_test 12.1 { | 
| +  INSERT INTO t1(t1, rank) VALUES('rank', NULL);; | 
| +} {1 {SQL logic error or missing database}} | 
| + | 
| +#------------------------------------------------------------------------- | 
| +# errors in the 'usermerge' option | 
| +# | 
| +do_execsql_test 13.0 { | 
| +  CREATE VIRTUAL TABLE tt USING fts5(ttt); | 
| +} | 
| +foreach {tn val} { | 
| +  1     -1 | 
| +  2     4.2 | 
| +  3     17 | 
| +  4     1 | 
| +} { | 
| +  set sql "INSERT INTO tt(tt, rank) VALUES('usermerge', $val)" | 
| +  do_catchsql_test 13.$tn $sql {1 {SQL logic error or missing database}} | 
| +} | 
| + | 
| finish_test | 
|  | 
|  |