| Index: third_party/sqlite/test/memleak.test
|
| ===================================================================
|
| --- third_party/sqlite/test/memleak.test (revision 56608)
|
| +++ third_party/sqlite/test/memleak.test (working copy)
|
| @@ -1,98 +0,0 @@
|
| -# 2001 September 15
|
| -#
|
| -# 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 runs all tests.
|
| -#
|
| -# $Id: memleak.test,v 1.10 2007/03/30 17:17:52 drh Exp $
|
| -
|
| -set testdir [file dirname $argv0]
|
| -source $testdir/tester.tcl
|
| -rename finish_test memleak_finish_test
|
| -proc finish_test {} {
|
| - catch {db close}
|
| - memleak_check
|
| -}
|
| -
|
| -if {[file exists ./sqlite_test_count]} {
|
| - set COUNT [exec cat ./sqlite_test_count]
|
| -} else {
|
| - set COUNT 3
|
| -}
|
| -
|
| -# LeakList will hold a list of the number of unfreed mallocs after
|
| -# each round of the test. This number should be constant. If it
|
| -# grows, it may mean there is a memory leak in the library.
|
| -#
|
| -set LeakList {}
|
| -
|
| -set EXCLUDE {
|
| - all.test
|
| - quick.test
|
| - misuse.test
|
| - memleak.test
|
| - btree2.test
|
| - async.test
|
| - async2.test
|
| - trans.test
|
| - crash.test
|
| - autovacuum_crash.test
|
| -}
|
| -# Test files btree2.test and btree4.test don't work if the
|
| -# SQLITE_DEFAULT_AUTOVACUUM macro is defined to true (because they depend
|
| -# on tables being allocated starting at page 2).
|
| -#
|
| -ifcapable default_autovacuum {
|
| - lappend EXCLUDE btree2.test
|
| - lappend EXCLUDE btree4.test
|
| -}
|
| -
|
| -if {[sqlite3 -has-codec]} {
|
| - # lappend EXCLUDE
|
| -}
|
| -if {[llength $argv]>0} {
|
| - set FILELIST $argv
|
| - set argv {}
|
| -} else {
|
| - set FILELIST [lsort -dictionary [glob $testdir/*.test]]
|
| -}
|
| -
|
| -foreach testfile $FILELIST {
|
| - set tail [file tail $testfile]
|
| - if {[lsearch -exact $EXCLUDE $tail]>=0} continue
|
| - set LeakList {}
|
| - for {set COUNTER 0} {$COUNTER<$COUNT} {incr COUNTER} {
|
| - source $testfile
|
| - if {[info exists Leak]} {
|
| - lappend LeakList $Leak
|
| - }
|
| - }
|
| - if {$LeakList!=""} {
|
| - puts -nonewline memory-leak-test-$tail...
|
| - incr ::nTest
|
| - foreach x $LeakList {
|
| - if {$x!=[lindex $LeakList 0]} {
|
| - puts " failed! ($LeakList)"
|
| - incr ::nErr
|
| - lappend ::failList memory-leak-test-$tail
|
| - break
|
| - }
|
| - }
|
| - puts " Ok"
|
| - }
|
| -}
|
| -memleak_finish_test
|
| -
|
| -# Run the malloc tests and the misuse test after memory leak detection.
|
| -# Both tests leak memory.
|
| -#
|
| -#catch {source $testdir/misuse.test}
|
| -#catch {source $testdir/malloc.test}
|
| -
|
| -memleak_finish_test
|
|
|