summaryrefslogtreecommitdiffstats
path: root/test/expr2.test
blob: 3dfbadcd900bcf43b22e7001861d9abc6a9b18b9 (plain)
1
2
3
4
5
6
7
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
# 2019 May 20
#
# The author disclaims copyright to this source code.  In place of
# a legal notice, here is a blessing:
#
#    May you do good and not evil.
#    May you find forgiveness for yourself and forgive others.
#    May you share freely, never taking more than you give.
#
#***********************************************************************
# This file implements regression tests for SQLite library.  The
# focus of this file is testing expressions.
#

set testdir [file dirname $argv0]
source $testdir/tester.tcl
set testprefix expr2

do_execsql_test 1.0 {
  CREATE TABLE t0(c0);
  INSERT INTO t0(c0) VALUES ('val');
}

do_execsql_test 1.1 {
  SELECT * FROM t0 WHERE (
      ( (0 IS NOT FALSE) OR NOT (0 IS FALSE OR (t0.c0 = 1)) ) IS 0
  )
} {val}

do_execsql_test 1.2.1 {
  SELECT 
      ( (0 IS NOT FALSE) OR NOT (0 IS FALSE OR (t0.c0 = 1)) ) IS 0
  FROM t0 
} {1}

do_execsql_test 1.2.2 {
  SELECT 
      ( (0 IS NOT FALSE) OR NOT (0 IS 0 OR (t0.c0 = 1)) ) IS 0
  FROM t0 
} {1}

do_execsql_test 1.3 {
  SELECT ( (0 IS NOT FALSE) OR NOT (0 IS FALSE OR (t0.c0 = 1)) ) FROM t0 
} {0}

do_execsql_test 1.4.1 {
  SELECT (0 IS NOT FALSE) FROM t0 
} {0}
do_execsql_test 1.4.2 {
  SELECT NOT (0 IS FALSE OR (t0.c0 = 1)) FROM t0 
} {0}


finish_test