1# 2010 January 12 2# 3# The author disclaims copyright to this source code. In place of 4# a legal notice, here is a blessing: 5# 6# May you do good and not evil. 7# May you find forgiveness for yourself and forgive others. 8# May you share freely, never taking more than you give. 9# 10#************************************************************************* 11# 12# Tests for the secure_delete pragma. 13# 14 15set testdir [file dirname $argv0] 16source $testdir/tester.tcl 17 18unset -nocomplain DEFAULT_SECDEL 19set DEFAULT_SECDEL 0 20ifcapable secure_delete { 21 set DEFAULT_SECDEL 1 22} 23 24 25do_test securedel-1.0 { 26 db eval {PRAGMA secure_delete;} 27} $DEFAULT_SECDEL 28 29forcedelete test2.db test2.db-journal 30do_test securedel-1.1 { 31 db eval { 32 ATTACH 'test2.db' AS db2; 33 PRAGMA main.secure_delete=ON; 34 PRAGMA db2.secure_delete; 35 } 36} [list 1 $DEFAULT_SECDEL] 37do_test securedel-1.2 { 38 db eval { 39 PRAGMA main.secure_delete=OFF; 40 PRAGMA db2.secure_delete; 41 } 42} [list 0 $DEFAULT_SECDEL] 43do_test securedel-1.3 { 44 db eval { 45 PRAGMA secure_delete=OFF; 46 PRAGMA db2.secure_delete; 47 } 48} {0 0} 49do_test securedel-1.4 { 50 db eval { 51 PRAGMA secure_delete=ON; 52 PRAGMA db2.secure_delete; 53 } 54} {1 1} 55 56do_test securedel-2.1 { 57 db eval { 58 DETACH db2; 59 ATTACH 'test2.db' AS db2; 60 PRAGMA db2.secure_delete; 61 } 62} 1 63do_test securedel-2.2 { 64 db eval { 65 DETACH db2; 66 PRAGMA main.secure_delete=OFF; 67 ATTACH 'test2.db' AS db2; 68 PRAGMA db2.secure_delete; 69 } 70} {0 0} 71 72finish_test 73