Author: bernhard
Date: Tue Nov 11 06:33:18 2008
New Revision: 32538

Modified:
   trunk/t/op/sysinfo.t

Log:
[t] Refactor sysinfo.t


Modified: trunk/t/op/sysinfo.t
==============================================================================
--- trunk/t/op/sysinfo.t        (original)
+++ trunk/t/op/sysinfo.t        Tue Nov 11 06:33:18 2008
@@ -51,32 +51,50 @@
 
 =cut
 
-
-
-pasm_output_is( <<'CODE', $PConfig{intvalsize}, "sysinfo integer size" );
-   sysinfo_i_ic I1, 1
-   print I1
-end
-CODE
-
-# XXX is 'doublesize' the right thing to use?
-pasm_output_is( <<'CODE', $PConfig{doublesize}, "sysinfo float size" );
-   sysinfo_i_ic I1, 2
-   print I1
-end
-CODE
-
-pasm_output_is( <<'CODE', $PConfig{ptrsize}, "sysinfo pointer size" );
-   sysinfo_i_ic I1, 3
+my @setup = (
+    { pconfig_key => 'intvalsize',
+      pasm_key    => 1,
+      desc        => 'integer size',
+      reg_type    => 'I',
+    },
+    { pconfig_key => 'doublesize',
+      pasm_key    => 2,
+      desc        => 'float size',
+      reg_type    => 'I',
+    },
+    { pconfig_key => 'ptrsize',
+      pasm_key    => 3,
+      desc        => 'pointer size',
+      reg_type    => 'I',
+    },
+    { pconfig_key => 'osname',
+      pasm_key    => 4,
+      desc        => 'osname',
+      reg_type    => 'S',
+    },
+    { pconfig_key => 'cpuarch',
+      pasm_key    => 7,
+      desc        => 'CPU Arch Family',
+      reg_type    => 'S',
+    },
+);
+
+foreach ( @setup ) {
+    if ( $_->{reg_type} eq 'I' ) {
+        pasm_output_is( <<"CODE", $PConfig{$_->{pconfig_key}}, "sysinfo 
$_->{desc}" );
+   sysinfo_i_ic I1, $_->{pasm_key}
    print I1
 end
 CODE
-
-pasm_output_is( <<'CODE', $PConfig{osname}, "sysinfo osname" );
-   sysinfo_s_ic S1, 4
+    }
+    else {
+        pasm_output_is( <<"CODE", $PConfig{$_->{pconfig_key}}, "sysinfo 
$_->{desc}" );
+   sysinfo_s_ic S1, $_->{pasm_key}
    print S1
 end
 CODE
+    }
+}
 
 # 5 & 6
 if ( $PConfig{osname} eq 'MSWin32' ) {
@@ -133,16 +151,6 @@
     }
 }
 
-# 7
-
-pasm_output_is( <<'CODE', $PConfig{cpuarch}, "sysinfo CPU Arch Family" );
-    sysinfo_s_ic S1, 7
-    print S1
-end
-CODE
-
-# 8
-
 SKIP:
 {
     skip "Requires a lot of work to find out the correct answer", 1;

Reply via email to