Download ext/session/sessionH.test from AryaWu/sqlite: direct link, hf CLI and curl.
- Browser
- Download file 1.93 kB
-
https://huggingface.co/AryaWu/sqlite/resolve/main/ext/session/sessionH.test
- Command line
-
hf download hf://AryaWu/sqlite/ext/session/sessionH.test
-
curl -L -o sessionH.test https://huggingface.co/AryaWu/sqlite/resolve/main/ext/session/sessionH.test
1.93 kB
| # 2018 January 18 | |
| # | |
| # 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. | |
| # | |
| #*********************************************************************** | |
| # | |
| if {![info exists testdir]} { | |
| set testdir [file join [file dirname [info script]] .. .. test] | |
| } | |
| source [file join [file dirname [info script]] session_common.tcl] | |
| source $testdir/tester.tcl | |
| ifcapable !session {finish_test; return} | |
| set testprefix sessionH | |
| forcedelete test.db2 | |
| sqlite3 db2 test.db2 | |
| do_test 1.0 { | |
| do_common_sql { | |
| CREATE TABLE t1(a, b, c, PRIMARY KEY(a, b)); | |
| } | |
| do_then_apply_sql -ignorenoop { | |
| WITH s(i) AS ( | |
| VALUES(1) UNION ALL SELECT i+1 FROM s WHERe i<10000 | |
| ) | |
| INSERT INTO t1 SELECT 'abcde', randomblob(16), i FROM s; | |
| } | |
| compare_db db db2 | |
| } {} | |
| #------------------------------------------------------------------------ | |
| db2 close | |
| reset_db | |
| do_execsql_test 2.0 { | |
| CREATE TABLE t1(a INTEGER PRIMARY KEY, b, c); | |
| INSERT INTO main.t1 VALUES(1, 2, 3), (4, 5, 6), (7, 8, 9); | |
| } | |
| do_test 2.1 { | |
| sqlite3session S db main | |
| S attach * | |
| db eval { | |
| BEGIN; | |
| INSERT INTO t1 VALUES(10, 11, 12); | |
| DELETE FROM t1 WHERE a=1; | |
| UPDATE t1 SET b='five', c='six' WHERE a=4; | |
| } | |
| set C [S changeset] | |
| db eval ROLLBACK | |
| S delete | |
| set {} {} | |
| } {} | |
| do_execsql_test 2.2 { | |
| CREATE TEMP TABLE t1(a INTEGER PRIMARY KEY, b, c); | |
| INSERT INTO temp.t1 VALUES(1, 2, 3), (4, 5, 6), (7, 8, 9); | |
| } | |
| set ::conflict [list] | |
| proc xConflict {args} { lappend ::conflict $args ; return "" } | |
| do_test 2.3 { | |
| sqlite3changeset_apply db $C xConflict | |
| set ::conflict | |
| } {} | |
| do_execsql_test 2.4 { | |
| SELECT * FROM main.t1; | |
| SELECT '****'; | |
| SELECT * FROM temp.t1; | |
| } { | |
| 4 five six 7 8 9 10 11 12 | |
| **** | |
| 1 2 3 4 5 6 7 8 9 | |
| } | |
| finish_test | |