[svn:parrot] r42169 - in trunk/t: op pmc

chromatic at svn.parrot.org chromatic at svn.parrot.org
Fri Oct 30 03:14:05 UTC 2009


Author: chromatic
Date: Fri Oct 30 03:13:04 2009
New Revision: 42169
URL: https://trac.parrot.org/parrot/changeset/42169

Log:
[t] Rewrote several PASM tests to PIR and a few PIR tests to declare vtable
overrides with :vtable attribute rather than implicit leading underscores.

Modified:
   trunk/t/op/gc.t
   trunk/t/pmc/freeze.t
   trunk/t/pmc/object-meths.t
   trunk/t/pmc/objects.t

Modified: trunk/t/op/gc.t
==============================================================================
--- trunk/t/op/gc.t	Fri Oct 30 01:05:48 2009	(r42168)
+++ trunk/t/op/gc.t	Fri Oct 30 03:13:04 2009	(r42169)
@@ -182,7 +182,7 @@
     ok(1, "leaving do_inc")
 .end
 
-.sub __increment :method
+.sub increment :vtable :method
     ok(1, "in __increment")
     sweep 1
 .end

Modified: trunk/t/pmc/freeze.t
==============================================================================
--- trunk/t/pmc/freeze.t	Fri Oct 30 01:05:48 2009	(r42168)
+++ trunk/t/pmc/freeze.t	Fri Oct 30 03:13:04 2009	(r42169)
@@ -1,5 +1,5 @@
 #! perl
-# Copyright (C) 2001-2008, Parrot Foundation.
+# Copyright (C) 2001-2009, Parrot Foundation.
 # $Id$
 
 use strict;
@@ -765,7 +765,7 @@
 .end
 
 .namespace ['Conure']
-.sub __init :method
+.sub init :method :vtable
     $P0 = new ['Integer']
     $P0 = 37
     setattribute self, 'temperature', $P0

Modified: trunk/t/pmc/object-meths.t
==============================================================================
--- trunk/t/pmc/object-meths.t	Fri Oct 30 01:05:48 2009	(r42168)
+++ trunk/t/pmc/object-meths.t	Fri Oct 30 03:13:04 2009	(r42169)
@@ -1,5 +1,5 @@
 #! perl
-# Copyright (C) 2001-2007, Parrot Foundation.
+# Copyright (C) 2001-2009, Parrot Foundation.
 # $Id$
 
 use strict;
@@ -142,71 +142,73 @@
 ok 2
 OUTPUT
 
-pasm_output_is( <<'CODE', <<'OUTPUT', "constructor - init attr" );
-    newclass P1, "Foo"
-    addattribute P1, ".i"
-    new P3, ['Foo']
-    print "ok 2\n"
-    print P3
-    print "\n"
+pir_output_is( <<'CODE', <<'OUTPUT', "constructor - init attr" );
+.sub 'main' :main
+    newclass $P1, "Foo"
+    addattribute $P1, ".i"
+    new $P3, ['Foo']
+    say "ok 2"
+    say $P3
     end
+.end
+
 .namespace ["Foo"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "ok 1\n"
-    new P10, ['Integer']
-    set P10, 42
-    setattribute P2, ".i", P10
-    set_returns ""
-    returncc
-.pcc_sub __get_string:
-    get_params "0", P2
-    getattribute P10, P2, ".i"
-    set_returns "0", P10
-    returncc
+
+.sub 'init' :vtable :method
+    say "ok 1"
+    new $P10, ['Integer']
+    set $P10, 42
+    setattribute self, ".i", $P10
+    .return()
+.end
+
+.sub 'get_string' :vtable :method
+    getattribute $P10, self, ".i"
+    .return( $P10 )
+.end
 CODE
 ok 1
 ok 2
 42
 OUTPUT
 
-pasm_output_is( <<'CODE', <<'OUTPUT', "constructor - parents" );
-    newclass P1, "Foo"
-    subclass P2, P1, "Bar"
-    subclass P3, P2, "Baz"
-    new P3, ['Baz']
-    new P3, ['Bar']
-    get_global P0, "_sub"
-    invokecc P0
-    print "done\n"
+pir_output_is( <<'CODE', <<'OUTPUT', "constructor - parents" );
+.sub 'main' :main
+    newclass $P1, "Foo"
+    subclass $P2, $P1, "Bar"
+    subclass $P3, $P2, "Baz"
+    new $P3, ['Baz']
+    new $P3, ['Bar']
+    _sub()
+    say "done"
     end
+.end
 
-    .namespace ["Foo"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "foo_init\n"
-    typeof S0, P2
-    print S0
-    print "\n"
-    returncc
+.namespace ["Foo"]
 
-    .namespace ["Bar"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "bar_init\n"
-    returncc
+.sub 'init' :vtable :method
+    say "foo_init"
+    typeof $S0, self
+    say $S0
+.end
 
-    .namespace ["Baz"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "baz_init\n"
-    returncc
+.namespace ["Bar"]
 
-    .namespace [] # main again
-.pcc_sub _sub:
-    print "in sub\n"
-    returncc
+.sub 'init' :vtable :method
+    say "bar_init"
+.end
+
+.namespace ["Baz"]
+
+.sub 'init' :vtable :method
+    say "baz_init"
+.end
+
+.namespace [] # main again
 
+.sub '_sub'
+    say "in sub"
+.end
 CODE
 foo_init
 Baz
@@ -443,7 +445,7 @@
 /Method 'nada' not found for invocant of class 'Foo'/
 OUTPUT
 
-pasm_output_is( <<'CODE', <<'OUTPUT', "constructor - diamond parents" );
+pir_output_is( <<'CODE', <<'OUTPUT', "constructor - diamond parents" );
 #
 # A   B A   E
 #  \ /   \ /
@@ -451,116 +453,103 @@
 #    \   /
 #     \ /
 #      F
-    newclass P1, "A"
-    newclass P2, "B"
-    subclass P3, P1, "C"
-    addparent P3, P2
-
-    subclass P4, P1, "D"
-    newclass P5, "E"
-    addparent P4, P5
-
-    subclass P6, P3, "F"
-    addparent P6, P4
-    new P10, 'ResizableIntegerArray'
-    local_branch P10, _check_isa
-
-    print "new F\n"
-    new P16, ['F']
-    print "done\n"
-    end
+.sub 'main' :main
+    newclass $P1, "A"
+    newclass $P2, "B"
+    subclass $P3, $P1, "C"
+    addparent $P3, $P2
+
+    subclass $P4, $P1, "D"
+    newclass $P5, "E"
+    addparent $P4, $P5
+
+    subclass $P6, $P3, "F"
+    addparent $P6, $P4
 
-_check_isa:
     print "F isa D "
-    isa I0, P6, "D"
-    print I0
-    print "\n"
+    isa $I0, $P6, "D"
+    say $I0
     print "D isa F "
-    isa I0, P4, "F"
-    print I0
-    print "\n"
+    isa $I0, $P4, "F"
+    say $I0
     print "F isa C "
-    isa I0, P6, "C"
-    print I0
-    print "\n"
+    isa $I0, $P6, "C"
+    say $I0
     print "C isa F "
-    isa I0, P3, "F"
-    print I0
-    print "\n"
+    isa $I0, $P3, "F"
+    say $I0
     print "F isa E "
-    isa I0, P6, "E"
-    print I0
-    print "\n"
+    isa $I0, $P6, "E"
+    say $I0
     print "E isa F "
-    isa I0, P5, "F"
-    print I0
-    print "\n"
+    isa $I0, $P5, "F"
+    say $I0
     print "F isa A "
-    isa I0, P6, "A"
-    print I0
-    print "\n"
+    isa $I0, $P6, "A"
+    say $I0
     print "A isa F "
-    isa I0, P1, "F"
-    print I0
-    print "\n"
+    isa $I0, $P1, "F"
+    say $I0
     print "F isa B "
-    isa I0, P6, "B"
-    print I0
-    print "\n"
+    isa $I0, $P6, "B"
+    say $I0
     print "B isa F "
-    isa I0, P2, "F"
-    print I0
-    print "\n"
+    isa $I0, $P2, "F"
+    say $I0
 
     print "C isa A "
-    isa I0, P3, "A"
-    print I0
-    print "\n"
+    isa $I0, $P3, "A"
+    say $I0
     print "A isa C "
-    isa I0, P1, "C"
-    print I0
-    print "\n"
+    isa $I0, $P1, "C"
+    say $I0
     print "D isa A "
-    isa I0, P4, "A"
-    print I0
-    print "\n"
+    isa $I0, $P4, "A"
+    say $I0
     print "A isa D "
-    isa I0, P1, "D"
-    print I0
-    print "\n"
-    local_return P10
+    isa $I0, $P1, "D"
+    say $I0
 
+    say "new F"
+    new $P16, ['F']
+    say "done"
+.end
 
 .namespace ["A"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "A init\n"
-    returncc
+
+.sub 'init' :vtable :method
+    say "A init"
+.end
+
 .namespace ["B"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "B init\n"
-    returncc
+
+.sub 'init' :vtable :method
+    say "B init"
+.end
+
 .namespace ["C"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "C init\n"
-    returncc
+
+.sub 'init' :vtable :method
+    say "C init"
+.end
+
 .namespace ["D"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "D init\n"
-    returncc
+
+.sub 'init' :vtable :method
+    say "D init"
+.end
+
 .namespace ["E"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "E init\n"
-    returncc
+
+.sub 'init' :vtable :method
+    say "E init"
+.end
+
 .namespace ["F"]
-.pcc_sub __init:
-    get_params "0", P2
-    print "F init\n"
-    returncc
+
+.sub 'init' :vtable :method
+    say "F init"
+.end
 CODE
 F isa D 1
 D isa F 0

Modified: trunk/t/pmc/objects.t
==============================================================================
--- trunk/t/pmc/objects.t	Fri Oct 30 01:05:48 2009	(r42168)
+++ trunk/t/pmc/objects.t	Fri Oct 30 03:13:04 2009	(r42169)
@@ -1,5 +1,5 @@
 #! parrot
-# Copyright (C) 2001-2008, Parrot Foundation.
+# Copyright (C) 2001-2009, Parrot Foundation.
 # $Id$
 
 =head1 NAME
@@ -1381,7 +1381,7 @@
 
     $P1 = new 'Foo41'
     $S1 = $P1
-    is( $S1, 'Hello world', '__get_string method' )
+    is( $S1, 'Hello world', 'get_string method' )
 
     $P1 = new 'Bar41'
     $S1 = $P1
@@ -1390,7 +1390,7 @@
 
 .namespace [ 'Foo41' ]
 
-.sub '__get_string' :method
+.sub 'get_string' :vtable :method
     .return('Hello world')
 .end
 


More information about the parrot-commits mailing list