On Tue, 2 Jul 2002, Dan Sugalski wrote:
> At 2:37 PM -0500 7/2/02, brian wheeler wrote: > >I saw this was a TODO item in core.ops. > > Applied, thanks. > > Tests, from anyone, would be much appreciated. Will these do? Simon --- t/op/string.t.old Tue Jul 2 16:59:23 2002 +++ t/op/string.t Tue Jul 2 17:13:10 2002 @@ -1,6 +1,6 @@ #! perl -w -use Parrot::Test tests => 83; +use Parrot::Test tests => 85; use Test::More; output_is( <<'CODE', <<OUTPUT, "set_s_s|sc" ); @@ -97,6 +97,84 @@ A string of lengt ** nothing ** OUTPUT +output_is(<<'CODE', <<OUTPUT, "Three argument chopn"); + set S1, "Parrot" + + chopn S2, S1, 0 + print S1 + print "\n" + print S2 + print "\n" + + chopn S2, S1, 1 + print S1 + print "\n" + print S2 + print "\n" + + set I0, 2 + chopn S2, S1, I0 + print S1 + print "\n" + print S2 + print "\n" + + chopn S2, "Parrot", 3 + print S2 + print "\n" + + chopn S1, S1, 5 + print S1 + print "\n" + + set S1, "Parrot" + set S3, S1 + chopn S2, S1, 3 + print S3 + print "\n" + + set S3, S1 + chopn S1, 3 + print S3 + print "\n" + + end +CODE +Parrot +Parrot +Parrot +Parro +Parrot +Parr +Par +P +Parrot +Par +OUTPUT + +output_is(<<'CODE', <<OUTPUT, "Three argument chopn, OOB values"); + set S1, "Parrot" + + chopn S2, S1, 7 + print S1 + print "\n" + print S2 + print "\n" + + chopn S2, S1, -1 + print S1 + print "\n" + print S2 + print "\n" + + end +CODE +Parrot + +Parrot +Parrot +OUTPUT + output_is( <<'CODE', <<'OUTPUT', "substr_s_s|sc_i|ic_i|ic" ); set S4, "12345JAPH01" set I4, 5