diff options
Diffstat (limited to 'tests/httpcookie.test')
| -rw-r--r-- | tests/httpcookie.test | 875 |
1 files changed, 0 insertions, 875 deletions
diff --git a/tests/httpcookie.test b/tests/httpcookie.test deleted file mode 100644 index 329330d..0000000 --- a/tests/httpcookie.test +++ /dev/null @@ -1,875 +0,0 @@ -# Commands covered: http::cookiejar -# -# This file contains a collection of tests for the cookiejar package. -# Sourcing this file into Tcl runs the tests and generates output for errors. -# No output means no errors were found. -# -# Copyright © 2014 Donal K. Fellows. -# -# See the file "license.terms" for information on usage and redistribution of -# this file, and for a DISCLAIMER OF ALL WARRANTIES. - -if {"::tcltest" ni [namespace children]} { - package require tcltest 2.5 - namespace import -force ::tcltest::* -} - -::tcltest::loadTestedCommands - -testConstraint notMacCI [expr {![info exists ::env(MAC_CI)]}] -testConstraint sqlite3 [expr {[testConstraint notMacCI] && ![catch { - package require sqlite3 -}]}] -testConstraint cookiejar [expr {[testConstraint sqlite3] && ![catch { - package require cookiejar -}]}] - -set COOKIEJAR_VERSION 0.2.0 -test http-cookiejar-1.1 "cookie storage: packaging" {cookiejar} { - package require cookiejar -} $COOKIEJAR_VERSION -test http-cookiejar-1.2 "cookie storage: packaging" {cookiejar} { - package require cookiejar - package require cookiejar -} $COOKIEJAR_VERSION - -test http-cookiejar-2.1 "cookie storage: basics" -constraints { - cookiejar -} -returnCodes error -body { - http::cookiejar -} -result {wrong # args: should be "http::cookiejar method ?arg ...?"} -test http-cookiejar-2.2 "cookie storage: basics" -constraints { - cookiejar -} -returnCodes error -body { - http::cookiejar ? -} -result {unknown method "?": must be configure, create, destroy or new} -test http-cookiejar-2.3 "cookie storage: basics" -constraints { - cookiejar -} -body { - http::cookiejar configure -} -result {-domainfile -domainlist -domainrefresh -loglevel -offline -purgeold -retain -vacuumtrigger} -test http-cookiejar-2.4 "cookie storage: basics" -constraints { - cookiejar -} -returnCodes error -body { - http::cookiejar configure a b c d e -} -result {wrong # args: should be "http::cookiejar configure ?optionName? ?optionValue?"} -test http-cookiejar-2.5 "cookie storage: basics" -constraints { - cookiejar -} -returnCodes error -body { - http::cookiejar configure a -} -result {bad option "a": must be -domainfile, -domainlist, -domainrefresh, -loglevel, -offline, -purgeold, -retain, or -vacuumtrigger} -test http-cookiejar-2.6 "cookie storage: basics" -constraints { - cookiejar -} -returnCodes error -body { - http::cookiejar configure -d -} -result {ambiguous option "-d": must be -domainfile, -domainlist, -domainrefresh, -loglevel, -offline, -purgeold, -retain, or -vacuumtrigger} -test http-cookiejar-2.7 "cookie storage: basics" -setup { - set old [http::cookiejar configure -loglevel] -} -constraints {cookiejar} -body { - list [http::cookiejar configure -loglevel] \ - [http::cookiejar configure -loglevel debug] \ - [http::cookiejar configure -loglevel] \ - [http::cookiejar configure -loglevel error] \ - [http::cookiejar configure -loglevel] -} -cleanup { - http::cookiejar configure -loglevel $old -} -result {info debug debug error error} -test http-cookiejar-2.8 "cookie storage: basics" -setup { - set old [http::cookiejar configure -loglevel] -} -constraints {cookiejar} -body { - list [http::cookiejar configure -loglevel] \ - [http::cookiejar configure -loglevel d] \ - [http::cookiejar configure -loglevel i] \ - [http::cookiejar configure -loglevel w] \ - [http::cookiejar configure -loglevel e] -} -cleanup { - http::cookiejar configure -loglevel $old -} -result {info debug info warn error} -test http-cookiejar-2.9 "cookie storage: basics" -body { - http::cookiejar configure -off -} -constraints {cookiejar} -match glob -result * -test http-cookiejar-2.10 "cookie storage: basics" -setup { - set oldval [http::cookiejar configure -offline] -} -constraints {cookiejar} -body { - http::cookiejar configure -offline true -} -cleanup { - catch {http::cookiejar configure -offline $oldval} -} -result 1 -test http-cookiejar-2.11 "cookie storage: basics" -setup { - set oldval [http::cookiejar configure -offline] -} -constraints {cookiejar} -body { - http::cookiejar configure -offline nonbool -} -cleanup { - catch {http::cookiejar configure -offline $oldval} -} -returnCodes error -result {expected boolean value but got "nonbool"} -test http-cookiejar-2.12 "cookie storage: basics" -setup { - set oldval [http::cookiejar configure -purgeold] -} -constraints {cookiejar} -body { - http::cookiejar configure -purge nonint -} -cleanup { - catch {http::cookiejar configure -purgeold $oldval} -} -returnCodes error -result {expected positive integer but got "nonint"} -test http-cookiejar-2.13 "cookie storage: basics" -setup { - set oldval [http::cookiejar configure -domainrefresh] -} -constraints {cookiejar} -body { - http::cookiejar configure -domainref nonint -} -cleanup { - catch {http::cookiejar configure -domainrefresh $oldval} -} -returnCodes error -result {expected positive integer but got "nonint"} -test http-cookiejar-2.14 "cookie storage: basics" -setup { - set oldval [http::cookiejar configure -domainrefresh] -} -constraints {cookiejar} -body { - http::cookiejar configure -domainref -42 -} -cleanup { - catch {http::cookiejar configure -domainrefresh $oldval} -} -returnCodes error -result {expected positive integer but got "-42"} -test http-cookiejar-2.15 "cookie storage: basics" -setup { - set oldval [http::cookiejar configure -domainrefresh] - set result unset - set tracer [http::cookiejar create tracer] -} -constraints {cookiejar} -body { - oo::objdefine $tracer method PostponeRefresh {} { - set ::result set - next - } - http::cookiejar configure -domainref 12345 - return $result -} -cleanup { - $tracer destroy - catch {http::cookiejar configure -domainrefresh $oldval} -} -result set - -test http-cookiejar-3.1 "cookie storage: class" {cookiejar} { - info object isa object http::cookiejar -} 1 -test http-cookiejar-3.2 "cookie storage: class" {cookiejar} { - info object isa class http::cookiejar -} 1 -test http-cookiejar-3.3 "cookie storage: class" {cookiejar} { - lsort [info object methods http::cookiejar] -} {configure} -test http-cookiejar-3.4 "cookie storage: class" {cookiejar} { - lsort [info object methods http::cookiejar -all] -} {configure create destroy new} -test http-cookiejar-3.5 "cookie storage: class" -setup { - catch {rename ::cookiejar ""} -} -constraints {cookiejar} -body { - namespace eval :: {http::cookiejar create cookiejar} -} -cleanup { - catch {rename ::cookiejar ""} -} -result ::cookiejar -test http-cookiejar-3.6 "cookie storage: class" -setup { - catch {rename ::cookiejar ""} -} -constraints {cookiejar} -body { - list [http::cookiejar create ::cookiejar] [info commands ::cookiejar] \ - [::cookiejar destroy] [info commands ::cookiejar] -} -cleanup { - catch {rename ::cookiejar ""} -} -result {::cookiejar ::cookiejar {} {}} -test http-cookiejar-3.7 "cookie storage: class" -setup { - catch {rename ::cookiejar ""} -} -constraints {cookiejar} -body { - http::cookiejar create ::cookiejar foo bar -} -returnCodes error -cleanup { - catch {rename ::cookiejar ""} -} -result {wrong # args: should be "http::cookiejar create ::cookiejar ?path?"} -test http-cookiejar-3.8 "cookie storage: class" -setup { - catch {rename ::cookiejar ""} - set f [makeFile "" cookiejar] - file delete $f -} -constraints {cookiejar} -body { - list [file exists $f] [http::cookiejar create ::cookiejar $f] \ - [file exists $f] -} -cleanup { - catch {rename ::cookiejar ""} - removeFile $f -} -result {0 ::cookiejar 1} -test http-cookiejar-3.9 "cookie storage: class" -setup { - catch {rename ::cookiejar ""} - set f [makeFile "bogus content for a database" cookiejar] -} -constraints {cookiejar} -body { - http::cookiejar create ::cookiejar $f -} -returnCodes error -cleanup { - catch {rename ::cookiejar ""} - removeFile $f -} -match glob -result * -test http-cookiejar-3.10 "cookie storage: class" -setup { - catch {rename ::cookiejar ""} - set dir [makeDirectory cookiejar] -} -constraints {cookiejar} -body { - http::cookiejar create ::cookiejar $dir -} -returnCodes error -cleanup { - catch {rename ::cookiejar ""} - removeDirectory $dir -} -match glob -result * - -test http-cookiejar-4.1 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar -} -constraints {cookiejar} -body { - cookiejar -} -returnCodes error -cleanup { - ::cookiejar destroy -} -result {wrong # args: should be "cookiejar method ?arg ...?"} -test http-cookiejar-4.2 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar -} -constraints {cookiejar} -body { - cookiejar ? -} -returnCodes error -cleanup { - ::cookiejar destroy -} -result {unknown method "?": must be destroy, forceLoadDomainData, getCookies, lookup, policyAllow or storeCookie} -test http-cookiejar-4.3 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar -} -constraints {cookiejar} -body { - lsort [info object methods cookiejar -all] -} -cleanup { - ::cookiejar destroy -} -result {destroy forceLoadDomainData getCookies lookup policyAllow storeCookie} -test http-cookiejar-4.4 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar -} -constraints {cookiejar} -body { - cookiejar getCookies -} -returnCodes error -cleanup { - ::cookiejar destroy -} -result {wrong # args: should be "cookiejar getCookies proto host path"} -test http-cookiejar-4.5 "cookie storage" -setup { - http::cookiejar create ::cookiejar -} -constraints {cookiejar} -body { - cookiejar getCookies http www.example.com / -} -cleanup { - ::cookiejar destroy -} -result {} -test http-cookiejar-4.6 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar -} -constraints {cookiejar} -body { - cookiejar storeCookie -} -returnCodes error -cleanup { - ::cookiejar destroy -} -result {wrong # args: should be "cookiejar storeCookie options"} -test http-cookiejar-4.7 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } -} -cleanup { - ::cookiejar destroy -} -result {} -test http-cookiejar-4.8 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - oo::objdefine ::cookiejar export Database -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - # Poke inside implementation! - cookiejar Database eval {SELECT count(*) FROM sessionCookies} -} -cleanup { - ::cookiejar destroy -} -result 1 -test http-cookiejar-4.9 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - oo::objdefine ::cookiejar export Database -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - # Poke inside implementation! - cookiejar Database eval {SELECT count(*) FROM persistentCookies} -} -cleanup { - ::cookiejar destroy -} -result 0 -test http-cookiejar-4.10 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar -} -constraints {cookiejar} -body { - cookiejar storeCookie [dict replace { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } expires [expr {[clock seconds]+5}]] -} -cleanup { - ::cookiejar destroy -} -result {} -test http-cookiejar-4.11 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - oo::objdefine ::cookiejar export Database -} -constraints {cookiejar} -body { - cookiejar storeCookie [dict replace { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } expires [expr {[clock seconds]+5}]] - # Poke inside implementation! - cookiejar Database eval {SELECT count(*) FROM sessionCookies} -} -cleanup { - ::cookiejar destroy -} -result 0 -test http-cookiejar-4.12 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - oo::objdefine ::cookiejar export Database -} -constraints {cookiejar} -body { - cookiejar storeCookie [dict replace { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } expires [expr {[clock seconds]+5}]] - # Poke inside implementation! - cookiejar Database eval {SELECT count(*) FROM persistentCookies} -} -cleanup { - ::cookiejar destroy -} -result 1 -test http-cookiejar-4.13 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - lappend result [cookiejar getCookies http www.example.com /] - cookiejar storeCookie { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - lappend result [cookiejar getCookies http www.example.com /] -} -cleanup { - ::cookiejar destroy -} -result {{} {foo bar}} -test http-cookiejar-4.14 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - lappend result [cookiejar getCookies http www.example.com /] - cookiejar storeCookie [dict replace { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } expires [expr {[clock seconds]+5}]] - lappend result [cookiejar getCookies http www.example.com /] -} -cleanup { - ::cookiejar destroy -} -result {{} {foo bar}} -test http-cookiejar-4.15 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - lappend result [cookiejar getCookies http www.example.com /] - cookiejar storeCookie { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie [dict replace { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } expires [expr {[clock seconds]+5}]] - lappend result [cookiejar getCookies http www.example.com /] -} -cleanup { - ::cookiejar destroy -} -result {{} {foo bar}} -test http-cookiejar-4.16 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - lappend result [cookiejar getCookies http www.example.com /] - cookiejar storeCookie { - key foo1 - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie [dict replace { - key foo2 - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } expires [expr {[clock seconds]+5}]] - lappend result [lsort -stride 2 [cookiejar getCookies http www.example.com /]] -} -cleanup { - ::cookiejar destroy -} -result {{} {foo1 bar foo2 bar}} -test http-cookiejar-4.17 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar -} -constraints {cookiejar} -body { - cookiejar lookup a b c d -} -returnCodes error -cleanup { - ::cookiejar destroy -} -result {wrong # args: should be "cookiejar lookup ?host? ?key?"} -test http-cookiejar-4.18 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - lappend result [cookiejar lookup] - lappend result [cookiejar lookup www.example.com] - lappend result [catch {cookiejar lookup www.example.com foo} value] $value - cookiejar storeCookie { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - lappend result [cookiejar lookup] - lappend result [cookiejar lookup www.example.com] - lappend result [cookiejar lookup www.example.com foo] -} -cleanup { - ::cookiejar destroy -} -result {{} {} 1 {no such key for that host} www.example.com foo bar} -test http-cookiejar-4.19 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo - value bar - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie { - key bar - value foo - secure 0 - domain www.example.org - origin www.example.org - path / - hostonly 1 - } - lappend result [lsort [cookiejar lookup]] - lappend result [cookiejar lookup www.example.com] - lappend result [cookiejar lookup www.example.com foo] - lappend result [cookiejar lookup www.example.org] - lappend result [cookiejar lookup www.example.org bar] -} -cleanup { - ::cookiejar destroy -} -result {{www.example.com www.example.org} foo bar bar foo} -test http-cookiejar-4.20 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo1 - value bar1 - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie [dict replace { - key foo2 - value bar2 - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } expires [expr {[clock seconds]+5}]] - lappend result [cookiejar lookup] - lappend result [lsort [cookiejar lookup www.example.com]] - lappend result [cookiejar lookup www.example.com foo1] - lappend result [cookiejar lookup www.example.com foo2] -} -cleanup { - ::cookiejar destroy -} -result {www.example.com {foo1 foo2} bar1 bar2} -test http-cookiejar-4.21 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo1 - value bar1 - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie { - key foo2 - value bar2 - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - lappend result [cookiejar lookup] - lappend result [lsort [cookiejar lookup www.example.com]] - lappend result [cookiejar lookup www.example.com foo1] - lappend result [cookiejar lookup www.example.com foo2] -} -cleanup { - ::cookiejar destroy -} -result {www.example.com {foo1 foo2} bar1 bar2} -test http-cookiejar-4.22 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - cookiejar forceLoadDomainData x y z -} -returnCodes error -cleanup { - ::cookiejar destroy -} -result {wrong # args: should be "cookiejar forceLoadDomainData"} -test http-cookiejar-4.23 "cookie storage: instance" -setup { - http::cookiejar create ::cookiejar - set result {} -} -constraints {cookiejar} -body { - cookiejar forceLoadDomainData -} -cleanup { - ::cookiejar destroy -} -result {} -test http-cookiejar-4.23.a {cookie storage: instance} -setup { - set off [http::cookiejar configure -offline] -} -constraints {cookiejar} -body { - http::cookiejar configure -offline 1 - [http::cookiejar create ::cookiejar] destroy -} -cleanup { - catch {::cookiejar destroy} - http::cookiejar configure -offline $off -} -result {} -test http-cookiejar-4.23.b {cookie storage: instance} -setup { - set off [http::cookiejar configure -offline] -} -constraints {cookiejar} -body { - http::cookiejar configure -offline 0 - [http::cookiejar create ::cookiejar] destroy -} -cleanup { - catch {::cookiejar destroy} - http::cookiejar configure -offline $off -} -result {} - -test http-cookiejar-5.1 "cookie storage: constraints" -setup { - http::cookiejar create ::cookiejar - cookiejar forceLoadDomainData -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo - value bar - secure 0 - domain com - origin com - path / - hostonly 1 - } - cookiejar lookup -} -cleanup { - ::cookiejar destroy -} -result {} -test http-cookiejar-5.2 "cookie storage: constraints" -setup { - http::cookiejar create ::cookiejar - cookiejar forceLoadDomainData -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo - value bar - secure 0 - domain foo.example.com - origin bar.example.org - path / - hostonly 1 - } - cookiejar lookup -} -cleanup { - ::cookiejar destroy -} -result {} -test http-cookiejar-5.3 "cookie storage: constraints" -setup { - http::cookiejar create ::cookiejar - cookiejar forceLoadDomainData -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo1 - value bar - secure 0 - domain com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie { - key foo2 - value bar - secure 0 - domain example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar lookup -} -cleanup { - ::cookiejar destroy -} -result {example.com} -test http-cookiejar-5.4 "cookie storage: constraints" -setup { - http::cookiejar create ::cookiejar - cookiejar forceLoadDomainData -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo - value bar1 - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie { - key foo - value bar2 - secure 0 - domain example.com - origin www.example.com - path / - hostonly 1 - } - lsort [cookiejar lookup] -} -cleanup { - ::cookiejar destroy -} -result {example.com www.example.com} -test http-cookiejar-5.5 "cookie storage: constraints" -setup { - http::cookiejar create ::cookiejar - cookiejar forceLoadDomainData -} -constraints {cookiejar} -body { - cookiejar storeCookie { - key foo1 - value 1 - secure 0 - domain com - origin www.example.com - path / - hostonly 0 - } - cookiejar storeCookie { - key foo2 - value 2 - secure 0 - domain com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie { - key foo3 - value 3 - secure 0 - domain example.com - origin www.example.com - path / - hostonly 0 - } - cookiejar storeCookie { - key foo4 - value 4 - secure 0 - domain example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie { - key foo5 - value 5 - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 0 - } - cookiejar storeCookie { - key foo6 - value 6 - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie { - key foo7 - value 7 - secure 1 - domain www.example.com - origin www.example.com - path / - hostonly 0 - } - cookiejar storeCookie { - key foo8 - value 8 - secure 1 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - cookiejar storeCookie { - key foo9 - value 9 - secure 0 - domain sub.www.example.com - origin www.example.com - path / - hostonly 1 - } - list [cookiejar getCookies http www.example.com /] \ - [cookiejar getCookies http www2.example.com /] \ - [cookiejar getCookies https www.example.com /] \ - [cookiejar getCookies http sub.www.example.com /] -} -cleanup { - ::cookiejar destroy -} -result {{foo3 3 foo6 6} {foo3 3} {foo3 3 foo6 6 foo8 8} {foo3 3 foo5 5}} - -test http-cookiejar-6.1 "cookie storage: expiry and lookup" -setup { - http::cookiejar create ::cookiejar - oo::objdefine cookiejar export PurgeCookies - set result {} - proc values cookies { - global result - lappend result [lsort [lmap {k v} $cookies {set v}]] - } -} -constraints {cookiejar} -body { - values [cookiejar getCookies http www.example.com /] - cookiejar storeCookie { - key foo - value session - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } - values [cookiejar getCookies http www.example.com /] - cookiejar storeCookie [dict replace { - key foo - value cookie - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } expires [expr {[clock seconds]+1}]] - values [cookiejar getCookies http www.example.com /] - cookiejar storeCookie { - key foo - value session-global - secure 0 - domain example.com - origin www.example.com - path / - hostonly 0 - } - values [cookiejar getCookies http www.example.com /] - after 2500 - update - values [cookiejar getCookies http www.example.com /] - cookiejar PurgeCookies - values [cookiejar getCookies http www.example.com /] - cookiejar storeCookie { - key foo - value go-away - secure 0 - domain example.com - origin www.example.com - path / - hostonly 0 - expires 0 - } - values [cookiejar getCookies http www.example.com /] -} -cleanup { - ::cookiejar destroy -} -result {{} session cookie {cookie session-global} {cookie session-global} session-global {}} - -test http-cookiejar-7.1 "cookie storage: persistence of persistent cookies" -setup { - catch {rename ::cookiejar ""} - set f [makeFile "" cookiejar] - file delete $f -} -constraints {cookiejar} -body { - http::cookiejar create ::cookiejar $f - ::cookiejar destroy - http::cookiejar create ::cookiejar $f -} -cleanup { - catch {rename ::cookiejar ""} - removeFile $f -} -result ::cookiejar -test http-cookiejar-7.2 "cookie storage: persistence of persistent cookies" -setup { - catch {rename ::cookiejar ""} - set f [makeFile "" cookiejar] - file delete $f - set result {} -} -constraints {cookiejar} -body { - http::cookiejar create ::cookiejar $f - cookiejar storeCookie [dict replace { - key foo - value cookie - secure 0 - domain www.example.com - origin www.example.com - path / - hostonly 1 - } expires [expr {[clock seconds]+1}]] - lappend result [::cookiejar getCookies http www.example.com /] - ::cookiejar destroy - http::cookiejar create ::cookiejar - lappend result [::cookiejar getCookies http www.example.com /] - ::cookiejar destroy - http::cookiejar create ::cookiejar $f - lappend result [::cookiejar getCookies http www.example.com /] -} -cleanup { - catch {rename ::cookiejar ""} - removeFile $f -} -result {{foo cookie} {} {foo cookie}} - -::tcltest::cleanupTests - -# Local variables: -# mode: tcl -# End: |
