1
0
mirror of https://github.com/sqlite/sqlite.git synced 2026-10-26 21:59:27 +03:00
Files
sqlite/test/journal1.test
drh 3d6fe13ddf Dozens and dozens of typo fixes in comments. This change adds no value
to the end product and is disruptive, so it is questionable whether or not
it will ever land on trunk.

FossilOrigin-Name: a80ae2c98b2dcf7aea93f7c175e5f4731d09b795ea0f7d052a5dac6401c68f90
2020-07-29 16:18:46 +00:00

73 lines
1.8 KiB
Plaintext

# 2005 March 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.
#
# This file implements tests to make sure that leftover journals from
# prior databases do not try to rollback into new databases.
#
# $Id: journal1.test,v 1.2 2005/03/20 22:54:56 drh Exp $
set testdir [file dirname $argv0]
source $testdir/tester.tcl
# These tests will not work on windows because windows uses
# mandatory file locking which breaks the copy_file command.
#
# Or with atomic_batch_write systems, as journal files are
# not created.
#
if {$tcl_platform(platform)=="windows"
|| [atomic_batch_write test.db]
} {
finish_test
return
}
# Create a smaple database
#
do_test journal1-1.1 {
execsql {
CREATE TABLE t1(a,b);
INSERT INTO t1 VALUES(1,randstr(10,400));
INSERT INTO t1 VALUES(2,randstr(10,400));
INSERT INTO t1 SELECT a+2, a||b FROM t1;
INSERT INTO t1 SELECT a+4, a||b FROM t1;
SELECT count(*) FROM t1;
}
} 8
# Make changes to the database and save the journal file.
# Then delete the database. Replace the journal file
# and try to create a new database with the same name. The
# old journal should not attempt to rollback into the new
# database.
#
do_test journal1-1.2 {
execsql {
BEGIN;
DELETE FROM t1;
}
forcecopy test.db-journal test.db-journal-bu
execsql {
ROLLBACK;
}
db close
delete_file test.db
copy_file test.db-journal-bu test.db-journal
sqlite3 db test.db
catchsql {
SELECT * FROM sqlite_master
}
} {0 {}}
finish_test