aboutsummaryrefslogtreecommitdiff
path: root/test/malloc.test
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2014-09-02 15:49:47 +0000
committerdrh <drh@noemail.net>2014-09-02 15:49:47 +0000
commitbf9ed6f9af8db145efb7294b1bb05b35fc70e7fc (patch)
tree870d850426bb945aee018a2dc2612f52f3248619 /test/malloc.test
parente1ed0b0e1787b0e5c6b2b59de4e2f161a82bec22 (diff)
parentf8ede57a6165889316f8a9df8ac1166c7a568100 (diff)
downloadsqlite-bf9ed6f9af8db145efb7294b1bb05b35fc70e7fc.tar.gz
sqlite-bf9ed6f9af8db145efb7294b1bb05b35fc70e7fc.zip
Merge the latest trunk changes, including the multi-threaded sorter, into
the sessions branch. FossilOrigin-Name: d4cce2c71e64ab7b6a65a81b88b69445ed859351
Diffstat (limited to 'test/malloc.test')
-rw-r--r--test/malloc.test42
1 files changed, 42 insertions, 0 deletions
diff --git a/test/malloc.test b/test/malloc.test
index 4276b58bb..86145672a 100644
--- a/test/malloc.test
+++ b/test/malloc.test
@@ -881,6 +881,48 @@ do_malloc_test 39 -tclprep {
db close
}
+reset_db
+add_test_utf16bin_collate db
+do_execsql_test 40.1 {
+ CREATE TABLE t1(a);
+ INSERT INTO t1 VALUES('fghij');
+ INSERT INTO t1 VALUES('pqrst');
+ INSERT INTO t1 VALUES('abcde');
+ INSERT INTO t1 VALUES('uvwxy');
+ INSERT INTO t1 VALUES('klmno');
+}
+do_execsql_test 40.2 {
+ SELECT * FROM t1 ORDER BY 1 COLLATE utf16bin;
+} {abcde fghij klmno pqrst uvwxy}
+do_faultsim_test 40.3 -faults oom-trans* -body {
+ execsql {
+ SELECT * FROM t1 ORDER BY 1 COLLATE utf16bin;
+ }
+} -test {
+ faultsim_test_result {0 {abcde fghij klmno pqrst uvwxy}}
+ faultsim_integrity_check
+}
+
+reset_db
+add_test_utf16bin_collate db
+set big [string repeat x 200]
+do_execsql_test 41.1 {
+ DROP TABLE IF EXISTS t1;
+ CREATE TABLE t1(a COLLATE utf16bin);
+ INSERT INTO t1 VALUES('fghij' || $::big);
+ INSERT INTO t1 VALUES('pqrst' || $::big);
+ INSERT INTO t1 VALUES('abcde' || $::big);
+ INSERT INTO t1 VALUES('uvwxy' || $::big);
+ INSERT INTO t1 VALUES('klmno' || $::big);
+ CREATE INDEX i1 ON t1(a);
+}
+do_faultsim_test 41.2 -faults oom* -body {
+ execsql { SELECT * FROM t1 WHERE a = ('abcde' || $::big)}
+} -test {
+ faultsim_test_result [list 0 "abcde$::big"]
+ faultsim_integrity_check
+}
+
# Ensure that no file descriptors were leaked.
do_test malloc-99.X {
catch {db close}