Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zoffixznet/000b627530ed15928b56cda8a081cde1 to your computer and use it in GitHub Desktop.
Save zoffixznet/000b627530ed15928b56cda8a081cde1 to your computer and use it in GitHub Desktop.
cpan@perlbuild2:~/CPANPRC/rakudo$ prove -e "./perl6-m" -vlr ../roast/./S32-str/substr.rakudo.moar
../roast/./S32-str/substr.rakudo.moar ..
1..58
ok 1 - Empty string with 0 as thrid arg
ok 2 - Empty string with 0 as thrid arg
ok 3 - first char
ok 4 - last char
ok 5 - counted from the end
ok 6 - arbitrary middle
ok 7 - length omitted
ok 8 - length goes past end
ok 9 - substr outside of string
ok 10 - ... on the negative side
ok 11 - from beginning, with negative length
ok 12 - in middle, with negative length
ok 13 - negative length - gives empty string
ok 14 - start from the end and negative length
ok 15 - original string still not changed
ok 16 - substr
ok 17 - .substr
ok 18 - substr on literal string
ok 19 - .substr on literal string
ok 20 - .substr.uc on literal string
ok 21 - .substr.wordcase on literal string
ok 22 - .substr on unicode string
ok 23 - .substr on Hebrew text
ok 24 - Sanity check string
ok 25 - Taking first char of Deseret string
ok 26 - Taking second char of Deseret string
ok 27 - substr (substr(Int, Int)).
ok 28 - .substr (substr(Int, Int)).
ok 29 - substr on literal string (substr(Int, Int)).
ok 30 - .substr on literal string (substr(Int, Int)).
ok 31 - .substr.uc on literal string (substr(Int, Int)).
ok 32 - .substr.wordcase on literal string (substr(Int, Int)).
ok 33 - .substr on unicode string (substr(Int, Int)).
ok 34 - .substr on Hebrew text (substr(Int, Int)).
ok 35 - substr (substr(Int, Int)).
ok 36 - .substr (substr(Int, Int)).
ok 37 - substr on literal string (substr(Int, Int)).
ok 38 - .substr on literal string (substr(Int, Int)).
ok 39 - .substr.uc on literal string (substr(Int, Int)).
ok 40 - .substr.wordcase on literal string (substr(Int, Int)).
ok 41 - .substr on unicode string (substr(Int, Int)).
ok 42 - .substr on Hebrew text (substr(Int, Int)).
ok 43 - substr (substr(Range))
ok 44 - substr (substr(Range))
ok 45 - substr (substr(^Range))
ok 46 - substr (substr(^Range))
ok 47 - substr (substr(Range^))
ok 48 - substr (substr(Range^))
ok 49 - substr (substr(^Range^))
ok 50 - substr (substr(^Range^))
ok 51 - substr (substr(Range Inf))
ok 52 - substr (substr(Range Inf))
1..3
ok 1 - code dies
ok 2 - right exception type (X::OutOfRange)
ok 3 - .message matches /'Start argument to substr' .+ 'should be in 0..3' .+ '*-5'/
ok 53 - did we throws-like X::OutOfRange?
1..3
ok 1 - code dies
ok 2 - right exception type (X::OutOfRange)
ok 3 - .message matches /'should be in 0..0' .+ '*-1000'/
ok 54 - did we throws-like X::OutOfRange?
ok 55 - substr with start beyond end of string is Failure
ok 56 - substr to Inf
ok 57 - substr with Int and WhateverCode arg
not ok 58 - substr on a string built with infix:<x> works# TODO RT \#123602
# Failed test 'substr on a string built with infix:<x> works'
# at ../roast/./S32-str/substr.rakudo.moar line 126
# expected: '01'
# got: '00'
# FUDGED!
Dubious, test returned 1 (wstat 256, 0x100)
All 58 subtests passed
Test Summary Report
-------------------
../roast/./S32-str/substr.rakudo.moar (Wstat: 256 Tests: 58 Failed: 0)
Non-zero exit status: 1
Files=1, Tests=58, 1 wallclock secs ( 0.02 usr 0.00 sys + 0.47 cusr 0.02 csys = 0.51 CPU)
Result: FAIL
cpan@perlbuild2:~/CPANPRC/rakudo$
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment