###############################################################################
#
# tkt-448d663d11.eagle --
#
# Written by Joe Mistachkin.
# Released to the public domain, use at your own risk!
#
###############################################################################
package require Eagle
package require Eagle.Library
package require Eagle.Test
runTestPrologue
###############################################################################
package require System.Data.SQLite.Test
runSQLiteTestPrologue
###############################################################################
runTest {test tkt-448d663d11-1.1 {missing journal mode, new db} -body {
setupDb [set fileName tkt-448d663d11-1.1.db]
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{delete}}
###############################################################################
runTest {test tkt-448d663d11-1.2 {missing journal mode, WAL db} -body {
set fileName tkt-448d663d11-1.2.db
file copy -force [file join $path wal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName "" "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{wal}}
###############################################################################
runTest {test tkt-448d663d11-1.3 {missing journal mode, non-WAL db} -body {
set fileName tkt-448d663d11-1.3.db
file copy -force [file join $path nonWal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName "" "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{delete}}
###############################################################################
runTest {test tkt-448d663d11-1.4 {'Default' journal mode, new db} -body {
setupDb [set fileName tkt-448d663d11-1.4.db] Default
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{delete}}
###############################################################################
runTest {test tkt-448d663d11-1.5 {'Default' journal mode, WAL db} -body {
set fileName tkt-448d663d11-1.5.db
file copy -force [file join $path wal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName Default "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{wal}}
###############################################################################
runTest {test tkt-448d663d11-1.6 {'Default' journal mode, non-WAL db} -body {
set fileName tkt-448d663d11-1.6.db
file copy -force [file join $path nonWal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName Default "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{delete}}
###############################################################################
runTest {test tkt-448d663d11-1.7 {'Delete' journal mode, new db} -body {
setupDb [set fileName tkt-448d663d11-1.7.db] Delete
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{delete}}
###############################################################################
runTest {test tkt-448d663d11-1.8 {'Delete' journal mode, WAL db} -body {
set fileName tkt-448d663d11-1.8.db
file copy -force [file join $path wal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName Delete "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{delete}}
###############################################################################
runTest {test tkt-448d663d11-1.9 {'Delete' journal mode, non-WAL db} -body {
set fileName tkt-448d663d11-1.9.db
file copy -force [file join $path nonWal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName Delete "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{delete}}
###############################################################################
runTest {test tkt-448d663d11-1.10 {'Persist' journal mode, new db} -body {
setupDb [set fileName tkt-448d663d11-1.10.db] Persist
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{persist}}
###############################################################################
runTest {test tkt-448d663d11-1.11 {'Off' journal mode, new db} -body {
setupDb [set fileName tkt-448d663d11-1.11.db] Off
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{off}}
###############################################################################
runTest {test tkt-448d663d11-1.12 {'Truncate' journal mode, new db} -body {
setupDb [set fileName tkt-448d663d11-1.12.db] Truncate
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{truncate}}
###############################################################################
runTest {test tkt-448d663d11-1.13 {'Memory' journal mode, new db} -body {
setupDb [set fileName tkt-448d663d11-1.13.db] Memory
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{memory}}
###############################################################################
runTest {test tkt-448d663d11-1.14 {'Wal' journal mode, new db} -body {
setupDb [set fileName tkt-448d663d11-1.14.db] Wal
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{wal}}
###############################################################################
runTest {test tkt-448d663d11-1.15 {'Wal' journal mode, non-WAL db} -body {
set fileName tkt-448d663d11-1.15.db
file copy -force [file join $path nonWal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName Wal "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{wal}}
###############################################################################
runTest {test tkt-448d663d11-1.16 {'Wal' journal mode, WAL db} -body {
set fileName tkt-448d663d11-1.16.db
file copy -force [file join $path wal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName Wal "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{wal}}
###############################################################################
runTest {test tkt-448d663d11-1.17 {'Bad' journal mode, new db} -body {
setupDb [set fileName tkt-448d663d11-1.17.db] Bad
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{delete}}
###############################################################################
runTest {test tkt-448d663d11-1.18 {'Bad' journal mode, non-WAL db} -body {
set fileName tkt-448d663d11-1.18.db
file copy -force [file join $path nonWal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName Bad "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{delete}}
###############################################################################
runTest {test tkt-448d663d11-1.19 {'Bad' journal mode, WAL db} -body {
set fileName tkt-448d663d11-1.19.db
file copy -force [file join $path wal.db] \
[file join [getDatabaseDirectory] $fileName]
setupDb $fileName Bad "" "" "" "" false
sql execute -execute scalar $db "PRAGMA journal_mode;"
} -cleanup {
cleanupDb $fileName
unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{wal}}
###############################################################################
runSQLiteTestEpilogue
runTestEpilogue