gitlab.com/CoiaPrant/sqlite3@v1.19.1/testdata/tcl/fts4umlaut.test (about)

     1  # 2018 December 3
     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
    12  # focus of this script is testing the FTS5 module.
    13  #
    14  
    15  set testdir [file dirname $argv0]
    16  source $testdir/tester.tcl
    17  set testprefix fts4umlaut
    18  
    19  ifcapable !fts3 {
    20    finish_test
    21    return
    22  }
    23  
    24  do_execsql_test 1.0 {
    25    CREATE VIRTUAL TABLE t1 USING fts4(x, tokenize=unicode61);
    26    CREATE VIRTUAL TABLE t2 USING fts4(
    27        x, 
    28        tokenize=unicode61 "remove_diacritics=2"
    29    );
    30  }
    31  
    32  foreach {tn q res1 res2} {
    33    1 "Hà Nội"                  0 1
    34    2 "Hà Noi"                  1 1
    35    3 "Ha Noi"                  1 1
    36    4 "Ha N\u1ed9i"             0 1
    37    5 "Ha N\u006fi"             1 1
    38    6 "Ha N\u006f\u0302i"       1 1
    39    7 "Ha N\u006f\u0323\u0302i" 1 1
    40  } {
    41    do_execsql_test 1.$tn.1 {
    42      DELETE FROM t1;
    43      INSERT INTO t1(rowid, x) VALUES (1, 'Ha Noi');
    44      SELECT count(*) FROM t1 WHERE t1 MATCH $q
    45    } $res1
    46    do_execsql_test 1.$tn.2 {
    47      DELETE FROM t1;
    48      INSERT INTO t1(rowid, x) VALUES (1, $q);
    49      SELECT count(*) FROM t1 WHERE t1 MATCH 'Ha Noi'
    50    } $res1
    51  
    52    do_execsql_test 1.$tn.3 {
    53      DELETE FROM t2;
    54      INSERT INTO t2(rowid, x) VALUES (1, 'Ha Noi');
    55      SELECT count(*) FROM t2 WHERE t2 MATCH $q
    56    } $res2
    57    do_execsql_test 1.$tn.4 {
    58      DELETE FROM t2;
    59      INSERT INTO t2(rowid, x) VALUES (1, $q);
    60      SELECT count(*) FROM t2 WHERE t2 MATCH 'Ha Noi'
    61    } $res2
    62  }
    63  
    64  finish_test