Tcl Source Code

Check-in [bdc8413143]
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to tclconference@googlegroups.com
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:(cherry-pick) relax the timings of 2 tests, which incidentally fail on Travis CI. Also backport a few new test-cases, adapted to match pre-TIP-502 behavior.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | core-8-5-branch
Files: files | file ages | folders
SHA3-256:bdc84131430c6c0afb8b0c0cc2790f55c35170c037d7d0d9081592c2a0c6e1a8
User & Date: jan.nijtmans 2018-12-20 08:06:20
Context
2018-12-30
22:44
Fix [3cf3a939d3]: timezone deprecated in vc2017 check-in: f062d9ee2c user: jan.nijtmans tags: core-8-5-branch
2018-12-20
20:04
New test-cases (backported from 8.7) adapted for pre-TIP-502 behavior check-in: 86bec25d37 user: jan.nijtmans tags: core-8-6-branch
08:06
(cherry-pick) relax the timings of 2 tests, which incidentally fail on Travis CI. Also backport a fe... check-in: bdc8413143 user: jan.nijtmans tags: core-8-5-branch
2018-12-18
19:49
No need for latest "rvm" any more in osx builds (now even gives an error) Remove unused/empty header... check-in: 534b4d524a user: jan.nijtmans tags: core-8-5-branch
2018-11-29
21:06
relax the timings of 2 tests, which incidentally fail on Travis CI check-in: b493489463 user: jan.nijtmans tags: core-8-6-branch
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to tests/event.test.

500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
test event-11.4 {Tcl_VwaitCmd procedure} {} {
    foreach i [after info] {
	after cancel $i
    }
    after 10; update; # On Mac make sure update won't take long
    after 100 {set x x-done}
    after 200 {set y y-done}
    after 300 {set z z-done}
    after idle {set q q-done}
    set x before
    set y before
    set z before
    set q before
    list [vwait y] $x $y $z $q
} {{} x-done y-done before q-done}







|







500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
test event-11.4 {Tcl_VwaitCmd procedure} {} {
    foreach i [after info] {
	after cancel $i
    }
    after 10; update; # On Mac make sure update won't take long
    after 100 {set x x-done}
    after 200 {set y y-done}
    after 400 {set z z-done}
    after idle {set q q-done}
    set x before
    set y before
    set z before
    set q before
    list [vwait y] $x $y $z $q
} {{} x-done y-done before q-done}

Changes to tests/string.test.

214
215
216
217
218
219
220


















221
222
223
224
225
226
227
test string-4.15 {string first, ability to two-byte encoded utf-8 chars} {
    # Test for a bug in Tcl 8.3 where test for all-single-byte-encoded
    # strings was incorrect, leading to an index returned by [string first] 
    # which pointed past the end of the string.
    set uchar \u057e    ;# character with two-byte encoding in utf-8
    string first % %#$uchar$uchar#$uchar$uchar#% 3
} 8



















test string-5.1 {string index} {
    list [catch {string index} msg] $msg
} {1 {wrong # args: should be "string index string charIndex"}}
test string-5.2 {string index} {
    list [catch {string index a b c} msg] $msg
} {1 {wrong # args: should be "string index string charIndex"}}







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
test string-4.15 {string first, ability to two-byte encoded utf-8 chars} {
    # Test for a bug in Tcl 8.3 where test for all-single-byte-encoded
    # strings was incorrect, leading to an index returned by [string first] 
    # which pointed past the end of the string.
    set uchar \u057e    ;# character with two-byte encoding in utf-8
    string first % %#$uchar$uchar#$uchar$uchar#% 3
} 8
test string-4.17 {string first, corner case} {
    string first a aaa 4294967295
} {0}
test string-4.18 {string first, corner case} {
    string first a aaa -1
} {0}
test string-4.19 {string first, corner case} {
    string first a aaa end-5
} {0}
test string-4.20 {string last, corner case} {
    string last a aaa 4294967295
} {-1}
test string-4.21 {string last, corner case} {
    string last a aaa -1
} {-1}
test string-4.22 {string last, corner case} {
    string last a aaa end-5
} {-1}

test string-5.1 {string index} {
    list [catch {string index} msg] $msg
} {1 {wrong # args: should be "string index string charIndex"}}
test string-5.2 {string index} {
    list [catch {string index a b c} msg] $msg
} {1 {wrong # args: should be "string index string charIndex"}}

Changes to tests/timer.test.

187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
    set y $x
    after 400
    update
    list $y $x
} {before after}
test timer-6.5 {Tcl_AfterCmd procedure, ms argument} {
    set x before
    after 300 set x after
    after 200
    update
    set y $x
    after 200
    update
    list $y $x
} {before after}
test timer-6.6 {Tcl_AfterCmd procedure, cancel option} {
    list [catch {after cancel} msg] $msg
} {1 {wrong # args: should be "after cancel id|command"}}
test timer-6.7 {Tcl_AfterCmd procedure, cancel option} {







|



|







187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
    set y $x
    after 400
    update
    list $y $x
} {before after}
test timer-6.5 {Tcl_AfterCmd procedure, ms argument} {
    set x before
    after 400 set x after
    after 200
    update
    set y $x
    after 400
    update
    list $y $x
} {before after}
test timer-6.6 {Tcl_AfterCmd procedure, cancel option} {
    list [catch {after cancel} msg] $msg
} {1 {wrong # args: should be "after cancel id|command"}}
test timer-6.7 {Tcl_AfterCmd procedure, cancel option} {