# 2011 November 16 # # 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 contains test cases for sqlite3_db_release_memory and # the PRAGMA shrink_memory statement. # set testdir [file dirname $argv0] source $testdir/tester.tcl unset -nocomplain baseline do_test shrink-1.1 { db eval { CREATE TABLE t1(x,y); INSERT INTO t1 VALUES(randomblob(1000000),1); } set ::baseline sqlite3_memory_used sqlite3_db_release_memory db expr {$::baseline > [sqlite3_memory_used]+500000} } {1} do_test shrink-1.2 { set baseline [sqlite3_memory_used] db eval { UPDATE t1 SET y=y+1; } expr {$::baseline+500000 < [sqlite3_memory_used]} } {1} do_test shrink-1.3 { set baseline [sqlite3_memory_used] db eval {PRAGMA shrink_memory} expr {$::baseline > [sqlite3_memory_used]+500000} } {1} finish_test