xref: /sqlite-3.40.0/test/filectrl.test (revision 5f0b8a0e)
155176259Sdrh# 2008 Jan 22
255176259Sdrh#
355176259Sdrh# The author disclaims copyright to this source code.  In place of
455176259Sdrh# a legal notice, here is a blessing:
555176259Sdrh#
655176259Sdrh#    May you do good and not evil.
755176259Sdrh#    May you find forgiveness for yourself and forgive others.
855176259Sdrh#    May you share freely, never taking more than you give.
955176259Sdrh#
1055176259Sdrh#***********************************************************************
1155176259Sdrh#
12aebf413dSaswift# $Id: filectrl.test,v 1.2 2008/11/21 00:10:35 aswift Exp $
1355176259Sdrh
1455176259Sdrhset testdir [file dirname $argv0]
1555176259Sdrhsource $testdir/tester.tcl
1655176259Sdrh
1755176259Sdrh
1855176259Sdrhdo_test filectrl-1.1 {
1955176259Sdrh  file_control_test db
2055176259Sdrh} {}
2155176259Sdrhdo_test filectrl-1.2 {
2255176259Sdrh  db eval {CREATE TEMP TABLE x(y);}
2355176259Sdrh  file_control_test db
2455176259Sdrh} {}
2555176259Sdrhdo_test filectrl-1.3 {
2655176259Sdrh  db close
2755176259Sdrh  sqlite3 db :memory:
2855176259Sdrh  file_control_test db
2955176259Sdrh} {}
30aebf413dSaswiftdo_test filectrl-1.4 {
31aebf413dSaswift  sqlite3 db test.db
32aebf413dSaswift  file_control_lasterrno_test db
33aebf413dSaswift} {}
34aebf413dSaswiftdo_test filectrl-1.5 {
35aebf413dSaswift  db close
36aebf413dSaswift  sqlite3 db test_control_lockproxy.db
37f8a78464Smistachkin  file_control_lockproxy_test db [get_pwd]
38aebf413dSaswift} {}
39696b33e6Sdrhdo_test filectrl-1.6 {
40696b33e6Sdrh  sqlite3 db test.db
41696b33e6Sdrh  set fn [file_control_tempfilename db]
42696b33e6Sdrh  set fn
43696b33e6Sdrh} {/etilqs_/}
44aebf413dSaswiftdb close
45fda06befSmistachkinforcedelete .test_control_lockproxy.db-conch test.proxy
461b361ff3Smistachkinforcedelete test.db test2.db
471b361ff3Smistachkin
481b361ff3Smistachkinif {$tcl_platform(platform)=="windows"} {
491b361ff3Smistachkin  do_test filectrl-2.1 {
501b361ff3Smistachkin    sqlite3 db test2.db
511b361ff3Smistachkin    set size [file size test2.db]
521b361ff3Smistachkin    set handle [file_control_win32_get_handle db]
531b361ff3Smistachkin    db close
541b361ff3Smistachkin    forcedelete test2.db
551b361ff3Smistachkin    list $size $handle [expr {$handle != 0}]
56*5f0b8a0eSmistachkin  } {/^0 \{0 [0-9A-Fa-f]+\} 1$/}
571b361ff3Smistachkin
581b361ff3Smistachkin  do_test filectrl-2.2 {
591b361ff3Smistachkin    sqlite3 db test2.db
601b361ff3Smistachkin    execsql {
611b361ff3Smistachkin      CREATE TABLE t1(x);
621b361ff3Smistachkin      INSERT INTO t1 (x) VALUES(RANDOMBLOB(1048576));
631b361ff3Smistachkin    }
641b361ff3Smistachkin    set size [file size test2.db]
651b361ff3Smistachkin    set handle [file_control_win32_get_handle db]
661b361ff3Smistachkin    db close
671b361ff3Smistachkin    forcedelete test2.db
681b361ff3Smistachkin    list $size $handle [expr {$handle != 0}]
69*5f0b8a0eSmistachkin  } {/^1\d+ \{0 [0-9A-Fa-f]+\} 1$/}
701b361ff3Smistachkin}
711b361ff3Smistachkin
7255176259Sdrhfinish_test
73