📄 lookaside.test
字号:
# 2008 August 01## 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.##***********************************************************************## Tests for the lookaside memory allocator.## $Id: lookaside.test,v 1.5 2008/08/12 15:48:25 drh Exp $set testdir [file dirname $argv0]source $testdir/tester.tclcatch {db close}sqlite3_shutdownsqlite3_config_pagecache 0 0sqlite3_config_scratch 0 0sqlite3_initializesqlite3 db test.db# Make sure sqlite3_db_config() and sqlite3_db_status are working.#do_test lookaside-1.1 { catch {sqlite3_config_error db}} {0}do_test lookaside-1.2 { sqlite3_db_config_lookaside db 1 20 20} {0}do_test lookaside-1.3 { sqlite3_db_status db SQLITE_DBSTATUS_LOOKASIDE_USED 0} {0 0 0}do_test lookaside-1.4 { db eval {CREATE TABLE t1(w,x,y,z);} foreach {x y z} [sqlite3_db_status db SQLITE_DBSTATUS_LOOKASIDE_USED 0] break expr {$x==0 && $y<$z && $z==20}} {1}do_test lookaside-1.5 { foreach {x y z} [sqlite3_db_status db SQLITE_DBSTATUS_LOOKASIDE_USED 1] break expr {$x==0 && $y<$z && $z==20}} {1}do_test lookaside-1.6 { foreach {x y z} [sqlite3_db_status db SQLITE_DBSTATUS_LOOKASIDE_USED 0] break expr {$x==0 && $y==$z && $y<20}} {1}do_test lookaside-1.7 { db cache flush foreach {x y z} [sqlite3_db_status db SQLITE_DBSTATUS_LOOKASIDE_USED 0] break expr {$x==0 && $y==0 && $z<20}} {1}do_test lookaside-1.8 { db cache flush foreach {x y z} [sqlite3_db_status db SQLITE_DBSTATUS_LOOKASIDE_USED 1] break expr {$x==0 && $y==0 && $z<20}} {1}do_test lookaside-1.9 { db cache flush sqlite3_db_status db SQLITE_DBSTATUS_LOOKASIDE_USED 0} {0 0 0}do_test lookaside-2.1 { sqlite3_db_config_lookaside db 0 100 1000} {0}do_test lookaside-2.2 { db eval {CREATE TABLE t2(x);} foreach {x y z} [sqlite3_db_status db SQLITE_DBSTATUS_LOOKASIDE_USED 0] break expr {$x==0 && $y<$z && $z>10 && $z<100}} {1}do_test lookaside-2.3 { sqlite3_db_config_lookaside db 0 50 50} {5} ;# SQLITE_BUSYdo_test lookaside-2.4 { db cache flush sqlite3_db_config_lookaside db 0 50 50} {0} ;# SQLITE_OK# sqlite3_db_status() with an invalid verb returns an error.#do_test lookaside-3.1 { sqlite3_db_status db 99999 0} {1 0 0}# Test that an invalid verb on sqlite3_config() is detected and# reported as an error.#do_test lookaside-4.1 { db close sqlite3_shutdown catch sqlite3_config_error} {0}sqlite3_initializefinish_test
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -