88 lines
2.2 KiB
Plaintext
88 lines
2.2 KiB
Plaintext
|
# 2010 March 25
|
||
|
#
|
||
|
# 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 tests to verify that ticket [cbd054fa6b] has been
|
||
|
# fixed.
|
||
|
#
|
||
|
|
||
|
set testdir [file dirname $argv0]
|
||
|
source $testdir/tester.tcl
|
||
|
|
||
|
ifcapable !stat2 {
|
||
|
finish_test
|
||
|
return
|
||
|
}
|
||
|
|
||
|
do_test tkt-cbd05-1.1 {
|
||
|
db eval {
|
||
|
CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT UNIQUE NOT NULL);
|
||
|
CREATE INDEX t1_x ON t1(b);
|
||
|
INSERT INTO t1 VALUES (NULL, '');
|
||
|
INSERT INTO t1 VALUES (NULL, 'A');
|
||
|
INSERT INTO t1 VALUES (NULL, 'B');
|
||
|
INSERT INTO t1 VALUES (NULL, 'C');
|
||
|
INSERT INTO t1 VALUES (NULL, 'D');
|
||
|
INSERT INTO t1 VALUES (NULL, 'E');
|
||
|
INSERT INTO t1 VALUES (NULL, 'F');
|
||
|
INSERT INTO t1 VALUES (NULL, 'G');
|
||
|
INSERT INTO t1 VALUES (NULL, 'H');
|
||
|
INSERT INTO t1 VALUES (NULL, 'I');
|
||
|
SELECT count(*) FROM t1;
|
||
|
}
|
||
|
} {10}
|
||
|
do_test tkt-cbd05-1.2 {
|
||
|
db eval {
|
||
|
ANALYZE;
|
||
|
}
|
||
|
} {}
|
||
|
do_test tkt-cbd05-1.3 {
|
||
|
execsql {
|
||
|
SELECT tbl,idx,group_concat(sample,' ')
|
||
|
FROM sqlite_stat2
|
||
|
WHERE idx = 't1_x'
|
||
|
GROUP BY tbl,idx
|
||
|
}
|
||
|
} {t1 t1_x { A B C D E F G H I}}
|
||
|
|
||
|
do_test tkt-cbd05-2.1 {
|
||
|
db eval {
|
||
|
DROP TABLE t1;
|
||
|
CREATE TABLE t1(a INTEGER PRIMARY KEY, b BLOB UNIQUE NOT NULL);
|
||
|
CREATE INDEX t1_x ON t1(b);
|
||
|
INSERT INTO t1 VALUES(NULL, X'');
|
||
|
INSERT INTO t1 VALUES(NULL, X'41');
|
||
|
INSERT INTO t1 VALUES(NULL, X'42');
|
||
|
INSERT INTO t1 VALUES(NULL, X'43');
|
||
|
INSERT INTO t1 VALUES(NULL, X'44');
|
||
|
INSERT INTO t1 VALUES(NULL, X'45');
|
||
|
INSERT INTO t1 VALUES(NULL, X'46');
|
||
|
INSERT INTO t1 VALUES(NULL, X'47');
|
||
|
INSERT INTO t1 VALUES(NULL, X'48');
|
||
|
INSERT INTO t1 VALUES(NULL, X'49');
|
||
|
SELECT count(*) FROM t1;
|
||
|
}
|
||
|
} {10}
|
||
|
do_test tkt-cbd05-2.2 {
|
||
|
db eval {
|
||
|
ANALYZE;
|
||
|
}
|
||
|
} {}
|
||
|
do_test tkt-cbd05-2.3 {
|
||
|
execsql {
|
||
|
SELECT tbl,idx,group_concat(sample,' ')
|
||
|
FROM sqlite_stat2
|
||
|
WHERE idx = 't1_x'
|
||
|
GROUP BY tbl,idx
|
||
|
}
|
||
|
} {t1 t1_x { A B C D E F G H I}}
|
||
|
|
||
|
finish_test
|