downgrade memory unlock failures to info level and fix function name in log output
[sqlcipher.git] / test / windowD.test
blobf2ec36a443cc8a3c3c5687fd808178e6ba75bed6
1 # 2022 June 2
3 # The author disclaims copyright to this source code.  In place of
4 # a legal notice, here is a blessing:
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.
10 #***********************************************************************
13 set testdir [file dirname $argv0]
14 source $testdir/tester.tcl
15 set testprefix windowD
18 do_execsql_test 1.0 {
19   CREATE TABLE t0(c0 TEXT);
20   CREATE VIEW v0(c0, c1) 
21     AS SELECT CUME_DIST() OVER (PARTITION BY t0.c0), TRUE FROM t0;
22   INSERT INTO t0 VALUES ('x');
25 do_execsql_test 1.1 {
26   SELECT ('500') IS (v0.c1) FROM v0;
27 } {
28   0
31 do_execsql_test 1.2 {
32   SELECT (('500') IS (v0.c1)) FROM v0, t0;
33 } {
34   0
37 do_execsql_test 1.2 {
38   SELECT (('500') IS (v0.c1)) IS FALSE FROM v0;
39 } {
40   1
43 do_execsql_test 1.3 {
44   SELECT * FROM v0;
45 } {
46   1.0 1
49 do_execsql_test 1.4 {
50   SELECT * FROM v0 WHERE ('500' IS v0.c1) IS FALSE;
51 } {
52   1.0 1
55 #-------------------------------------------------------------------------
57 reset_db
58 do_execsql_test 2.0 {
59   CREATE TABLE t1(x);
60   INSERT INTO t1 VALUES('value');
61   CREATE VIEW v1(a, b, c, d) AS SELECT 1, 2, TRUE, FALSE FROM t1;
64 do_execsql_test 2.1 {
65   SELECT 500 IS a, 500 IS b, 500 IS c, 500 IS d FROM v1
66 } {0 0 0 0}
68 do_execsql_test 2.2 {
69   SELECT * FROM v1 WHERE 500 IS c;
70 } {}
72 do_execsql_test 2.3 {
73   SELECT * FROM v1 WHERE 500 IS d;
74 } {}
76 do_execsql_test 2.4 {
77   CREATE VIEW v2 AS SELECT max(x) OVER () AS a, TRUE AS c FROM t1;
80 do_execsql_test 2.5 {
81   SELECT 500 IS c FROM v2;
82 } 0
84 do_execsql_test 2.6 {
85   SELECT * FROM v2 WHERE 500 IS c;
86 } {}
93 finish_test