Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

64 lines (56 sloc) 1.844 kb
# 2010 July 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 implements regression tests for SQLite library.
#
set testdir [file dirname $argv0]
source $testdir/tester.tcl
source $testdir/lock_common.tcl
source $testdir/malloc_common.tcl
#-------------------------------------------------------------------------
# If a connection is required to create a journal file, it creates it with
# the same file-system permissions as the database file itself. Test this.
#
if {$::tcl_platform(platform) == "unix"} {
# Changed on 2012-02-13: umask is deliberately ignored for -wal, -journal,
# and -shm files.
#set umask [exec /bin/sh -c umask]
faultsim_delete_and_reopen
do_test journal3-1.1 { execsql { CREATE TABLE tx(y, z) } } {}
foreach {tn permissions} {
1 00644
2 00666
3 00600
4 00755
} {
db close
#set effective [format %.5o [expr $permissions & ~$umask]]
set effective $permissions
do_test journal3-1.2.$tn.1 {
catch { forcedelete test.db-journal }
file attributes test.db -permissions $permissions
file attributes test.db -permissions
} $permissions
do_test journal3-1.2.$tn.2 { file exists test.db-journal } {0}
do_test journal3-1.2.$tn.3 {
sqlite3 db test.db
execsql {
BEGIN;
INSERT INTO tx DEFAULT VALUES;
}
file exists test.db-journal
} {1}
do_test journal3-1.2.$tn.4 {
file attr test.db-journal -perm
} $effective
do_execsql_test journal3-1.2.$tn.5 { ROLLBACK } {}
}
}
finish_test
Jump to Line
Something went wrong with that request. Please try again.