| OLD | NEW |
| 1 # 2011 April 22 | 1 # 2011 April 22 |
| 2 # | 2 # |
| 3 # The author disclaims copyright to this source code. In place of | 3 # The author disclaims copyright to this source code. In place of |
| 4 # a legal notice, here is a blessing: | 4 # a legal notice, here is a blessing: |
| 5 # | 5 # |
| 6 # May you do good and not evil. | 6 # May you do good and not evil. |
| 7 # May you find forgiveness for yourself and forgive others. | 7 # May you find forgiveness for yourself and forgive others. |
| 8 # May you share freely, never taking more than you give. | 8 # May you share freely, never taking more than you give. |
| 9 # | 9 # |
| 10 #*********************************************************************** | 10 #*********************************************************************** |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 48 13 file:test.db%00extra test.db | 48 13 file:test.db%00extra test.db |
| 49 14 file:testdb%00.db%00extra testdb | 49 14 file:testdb%00.db%00extra testdb |
| 50 | 50 |
| 51 15 test.db?mork=1#boris test.db?mork=1#boris | 51 15 test.db?mork=1#boris test.db?mork=1#boris |
| 52 16 file://localhostPWD/test.db%3Fhello test.db?hello | 52 16 file://localhostPWD/test.db%3Fhello test.db?hello |
| 53 } { | 53 } { |
| 54 | 54 |
| 55 | 55 |
| 56 ifcapable !curdir { if {$tn==3} break } | 56 ifcapable !curdir { if {$tn==3} break } |
| 57 | 57 |
| 58 ifcapable uri_00_error { |
| 59 if {[string first %00 $uri]>=0} continue |
| 60 } |
| 61 |
| 58 if {$tcl_platform(platform)=="windows"} { | 62 if {$tcl_platform(platform)=="windows"} { |
| 59 # | 63 # |
| 60 # NOTE: Due to limits on legal characters for file names imposed by | 64 # NOTE: Due to limits on legal characters for file names imposed by |
| 61 # Windows, we must skip the final two tests here (i.e. the | 65 # Windows, we must skip the final two tests here (i.e. the |
| 62 # question mark is illegal in a file name on Windows). | 66 # question mark is illegal in a file name on Windows). |
| 63 # | 67 # |
| 64 if {$tn>14} break | 68 if {$tn>14} break |
| 65 | 69 |
| 66 # | 70 # |
| 67 # NOTE: When running on Tcl 8.6 (or higher?) on Windows, a colon within | 71 # NOTE: When running on Tcl 8.6 (or higher?) on Windows, a colon within |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 8 file:testdb%00.db?=world&xyz=abc {xyz abc} | 121 8 file:testdb%00.db?=world&xyz=abc {xyz abc} |
| 118 9 file:test.db?%00hello=world&xyz=abc {xyz abc} | 122 9 file:test.db?%00hello=world&xyz=abc {xyz abc} |
| 119 10 file:test.db?hello=%00world&xyz= {hello {} xyz {}} | 123 10 file:test.db?hello=%00world&xyz= {hello {} xyz {}} |
| 120 11 file:test.db?=#ravada {} | 124 11 file:test.db?=#ravada {} |
| 121 12 file:test.db?&&&&&&&&hello=world&&&&&&& {hello world} | 125 12 file:test.db?&&&&&&&&hello=world&&&&&&& {hello world} |
| 122 | 126 |
| 123 13 test.db?&&&&&&&&hello=world&&&&&&& {} | 127 13 test.db?&&&&&&&&hello=world&&&&&&& {} |
| 124 14 http:test.db?hello&world {} | 128 14 http:test.db?hello&world {} |
| 125 } { | 129 } { |
| 126 | 130 |
| 131 ifcapable uri_00_error { |
| 132 if {[string first %00 $uri]>=0} continue |
| 133 } |
| 134 |
| 127 if {$tcl_platform(platform) == "windows" && $tn>12} { | 135 if {$tcl_platform(platform) == "windows" && $tn>12} { |
| 128 continue | 136 continue |
| 129 } | 137 } |
| 130 | 138 |
| 131 set ::arglist "" | 139 set ::arglist "" |
| 132 set DB [sqlite3_open $uri] | 140 set DB [sqlite3_open $uri] |
| 133 do_test 2.$tn.1 { set ::arglist } $kvlist | 141 do_test 2.$tn.1 { set ::arglist } $kvlist |
| 134 sqlite3_close $DB | 142 sqlite3_close $DB |
| 135 | 143 |
| 136 sqlite3 db xxx.db | 144 sqlite3 db xxx.db |
| (...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 326 execsql { ATTACH 'file:test.db2?mode=rw' AS aux } | 334 execsql { ATTACH 'file:test.db2?mode=rw' AS aux } |
| 327 } {} | 335 } {} |
| 328 do_execsql_test 7.3 { | 336 do_execsql_test 7.3 { |
| 329 INSERT INTO t2 VALUES('c', 'd') | 337 INSERT INTO t2 VALUES('c', 'd') |
| 330 } {} | 338 } {} |
| 331 do_catchsql_test 7.4 { | 339 do_catchsql_test 7.4 { |
| 332 INSERT INTO t1 VALUES(3, 4) | 340 INSERT INTO t1 VALUES(3, 4) |
| 333 } {1 {attempt to write a readonly database}} | 341 } {1 {attempt to write a readonly database}} |
| 334 | 342 |
| 335 finish_test | 343 finish_test |
| OLD | NEW |