gitlab.com/CoiaPrant/sqlite3@v1.19.1/testdata/tcl/tkt-9a8b09f8e6.test (about)

     1  # 2014 June 26
     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.
    12  #
    13  # This file implements tests to verify that ticket [9a8b09f8e6] has been
    14  # fixed.
    15  #
    16  
    17  set testdir [file dirname $argv0]
    18  source $testdir/tester.tcl
    19  set testprefix tkt-9a8b09f8e6
    20  
    21  do_test 1.1 {
    22    execsql {
    23      CREATE TABLE t1(x TEXT);
    24      INSERT INTO t1 VALUES('1');
    25    }
    26  } {}
    27  
    28  do_test 1.2 {
    29    execsql {
    30      CREATE TABLE t2(x INTEGER);
    31      INSERT INTO t2 VALUES(1);
    32    }
    33  } {}
    34  
    35  do_test 1.3 {
    36    execsql {
    37      CREATE TABLE t3(x REAL);
    38      INSERT INTO t3 VALUES(1.0);
    39    }
    40  } {}
    41  
    42  do_test 1.4 {
    43    execsql {
    44      CREATE TABLE t4(x REAL);
    45      INSERT INTO t4 VALUES(1.11);
    46    }
    47  } {}
    48  
    49  do_test 1.5 {
    50    execsql {
    51      CREATE TABLE t5(x, y);
    52      INSERT INTO t5 VALUES('1', 'one');
    53      INSERT INTO t5 VALUES(1, 'two');
    54      INSERT INTO t5 VALUES('1.0', 'three');
    55      INSERT INTO t5 VALUES(1.0, 'four');
    56    }
    57  } {}
    58  
    59  do_test 2.1 {
    60    execsql {
    61      SELECT x FROM t1 WHERE x IN (1);
    62    }
    63  } {1}
    64  
    65  do_test 2.2 {
    66    execsql {
    67      SELECT x FROM t1 WHERE x IN (1.0);
    68    }
    69  } {}
    70  
    71  do_test 2.3 {
    72    execsql {
    73      SELECT x FROM t1 WHERE x IN ('1');
    74    }
    75  } {1}
    76  
    77  do_test 2.4 {
    78    execsql {
    79      SELECT x FROM t1 WHERE x IN ('1.0');
    80    }
    81  } {}
    82  
    83  do_test 2.5 {
    84    execsql {
    85      SELECT x FROM t1 WHERE 1 IN (x);
    86    }
    87  } {}
    88  
    89  do_test 2.6 {
    90    execsql {
    91      SELECT x FROM t1 WHERE 1.0 IN (x);
    92    }
    93  } {}
    94  
    95  do_test 2.7 {
    96    execsql {
    97      SELECT x FROM t1 WHERE '1' IN (x);
    98    }
    99  } {1}
   100  
   101  do_test 2.8 {
   102    execsql {
   103      SELECT x FROM t1 WHERE '1.0' IN (x);
   104    }
   105  } {}
   106  
   107  do_test 3.1 {
   108    execsql {
   109      SELECT x FROM t2 WHERE x IN (1);
   110    }
   111  } {1}
   112  
   113  do_test 3.2 {
   114    execsql {
   115      SELECT x FROM t2 WHERE x IN (1.0);
   116    }
   117  } {1}
   118  
   119  do_test 3.3 {
   120    execsql {
   121      SELECT x FROM t2 WHERE x IN ('1');
   122    }
   123  } {1}
   124  
   125  do_test 3.4 {
   126    execsql {
   127      SELECT x FROM t2 WHERE x IN ('1.0');
   128    }
   129  } {1}
   130  
   131  do_test 3.5 {
   132    execsql {
   133      SELECT x FROM t2 WHERE 1 IN (x);
   134    }
   135  } {1}
   136  
   137  do_test 3.6 {
   138    execsql {
   139      SELECT x FROM t2 WHERE 1.0 IN (x);
   140    }
   141  } {1}
   142  
   143  do_test 3.7 {
   144    execsql {
   145      SELECT x FROM t2 WHERE '1' IN (x);
   146    }
   147  } {}
   148  
   149  do_test 3.8 {
   150    execsql {
   151      SELECT x FROM t2 WHERE '1.0' IN (x);
   152    }
   153  } {}
   154  
   155  do_test 4.1 {
   156    execsql {
   157      SELECT x FROM t3 WHERE x IN (1);
   158    }
   159  } {1.0}
   160  
   161  do_test 4.2 {
   162    execsql {
   163      SELECT x FROM t3 WHERE x IN (1.0);
   164    }
   165  } {1.0}
   166  
   167  do_test 4.3 {
   168    execsql {
   169      SELECT x FROM t3 WHERE x IN ('1');
   170    }
   171  } {1.0}
   172  
   173  do_test 4.4 {
   174    execsql {
   175      SELECT x FROM t3 WHERE x IN ('1.0');
   176    }
   177  } {1.0}
   178  
   179  do_test 4.5 {
   180    execsql {
   181      SELECT x FROM t3 WHERE 1 IN (x);
   182    }
   183  } {1.0}
   184  
   185  do_test 4.6 {
   186    execsql {
   187      SELECT x FROM t3 WHERE 1.0 IN (x);
   188    }
   189  } {1.0}
   190  
   191  do_test 4.7 {
   192    execsql {
   193      SELECT x FROM t3 WHERE '1' IN (x);
   194    }
   195  } {}
   196  
   197  do_test 4.8 {
   198    execsql {
   199      SELECT x FROM t3 WHERE '1.0' IN (x);
   200    }
   201  } {}
   202  
   203  do_test 5.1 {
   204    execsql {
   205      SELECT x FROM t4 WHERE x IN (1);
   206    }
   207  } {}
   208  
   209  do_test 5.2 {
   210    execsql {
   211      SELECT x FROM t4 WHERE x IN (1.0);
   212    }
   213  } {}
   214  
   215  do_test 5.3 {
   216    execsql {
   217      SELECT x FROM t4 WHERE x IN ('1');
   218    }
   219  } {}
   220  
   221  do_test 5.4 {
   222    execsql {
   223      SELECT x FROM t4 WHERE x IN ('1.0');
   224    }
   225  } {}
   226  
   227  do_test 5.5 {
   228    execsql {
   229      SELECT x FROM t4 WHERE x IN (1.11);
   230    }
   231  } {1.11}
   232  
   233  do_test 5.6 {
   234    execsql {
   235      SELECT x FROM t4 WHERE x IN ('1.11');
   236    }
   237  } {1.11}
   238  
   239  do_test 5.7 {
   240    execsql {
   241      SELECT x FROM t4 WHERE 1 IN (x);
   242    }
   243  } {}
   244  
   245  do_test 5.8 {
   246    execsql {
   247      SELECT x FROM t4 WHERE 1.0 IN (x);
   248    }
   249  } {}
   250  
   251  do_test 5.9 {
   252    execsql {
   253      SELECT x FROM t4 WHERE '1' IN (x);
   254    }
   255  } {}
   256  
   257  do_test 5.10 {
   258    execsql {
   259      SELECT x FROM t4 WHERE '1.0' IN (x);
   260    }
   261  } {}
   262  
   263  do_test 5.11 {
   264    execsql {
   265      SELECT x FROM t4 WHERE 1.11 IN (x);
   266    }
   267  } {1.11}
   268  
   269  do_test 5.12 {
   270    execsql {
   271      SELECT x FROM t4 WHERE '1.11' IN (x);
   272    }
   273  } {}
   274  
   275  do_test 6.1 {
   276    execsql {
   277      SELECT x, y FROM t5 WHERE x IN (1);
   278    }
   279  } {1 two 1.0 four}
   280  
   281  do_test 6.2 {
   282    execsql {
   283      SELECT x, y FROM t5 WHERE x IN (1.0);
   284    }
   285  } {1 two 1.0 four}
   286  
   287  do_test 6.3 {
   288    execsql {
   289      SELECT x, y FROM t5 WHERE x IN ('1');
   290    }
   291  } {1 one}
   292  
   293  do_test 6.4 {
   294    execsql {
   295      SELECT x, y FROM t5 WHERE x IN ('1.0');
   296    }
   297  } {1.0 three}
   298  
   299  do_test 6.5 {
   300    execsql {
   301      SELECT x, y FROM t5 WHERE 1 IN (x);
   302    }
   303  } {1 two 1.0 four}
   304  
   305  do_test 6.6 {
   306    execsql {
   307      SELECT x, y FROM t5 WHERE 1.0 IN (x);
   308    }
   309  } {1 two 1.0 four}
   310  
   311  do_test 6.7 {
   312    execsql {
   313      SELECT x, y FROM t5 WHERE '1' IN (x);
   314    }
   315  } {1 one}
   316  
   317  do_test 6.8 {
   318    execsql {
   319      SELECT x, y FROM t5 WHERE '1.0' IN (x);
   320    }
   321  } {1.0 three}
   322  
   323  finish_test