cvsuser     04/10/19 07:11:48

  Added:       t/pmc    integer.t
  Log:
  Add in file that went missing
  
  Courtesy of Bernhard Schmalhofer <[EMAIL PROTECTED]>
  
  Revision  Changes    Path
  1.1                  parrot/t/pmc/integer.t
  
  Index: integer.t
  ===================================================================
  #! perl -w
  # Copyright: 2001-2003 The Perl Foundation.  All Rights Reserved.
  # $Id: integer.t,v 1.1 2004/10/19 14:11:48 dan Exp $
  
  =head1 NAME
  
  t/pmc/integer.t - Integer basic type
  
  =head1 SYNOPSIS
  
        % perl -Ilib t/pmc/integer.t
  
  =head1 DESCRIPTION
  
  Tests the Integer PMC.
  
  =cut
  
  use Parrot::Test tests => 5;
  
  output_is(<< 'CODE', << 'OUTPUT', "basic math");
  ##PIR##
  .sub _main
      .local pmc int_1
      int_1 = new Integer
      print int_1
      print "\n"
      int_1 = 1
      print int_1
      print "\n"
      int_1 += 777777
      int_1 -= 777776
      print int_1
      print "\n"
      int_1 *= -333333
      int_1 /= -222222
      print int_1
      print "\n"
      inc int_1
      inc int_1
      dec int_1
      print int_1
      print "\n"
      neg int_1
      dec int_1
      neg int_1
      print int_1
      print "\n"
      end
  .end
  CODE
  0
  1
  2
  3
  4
  5
  OUTPUT
  
  output_is(<< 'CODE', << 'OUTPUT', "truth and definedness");
  ##PIR##
  .sub _main
      .local pmc int_1
      int_1 = new Integer
  
      print "A newly created Integer is "
      if int_1 goto LABEL_1
      print "not "
  LABEL_1: 
      print "true.\n"
  
      .local int is_defined
  
      is_defined = defined int_1
      print "A newly created Integer is "
      if is_defined goto LABEL_2
      print " not "
  LABEL_2: 
      print "defined.\n"
  
      int_1 = -999999999
      print "The Integer "
      print int_1
      print " is "
      if is_defined goto LABEL_3
      print "not "
  LABEL_3: 
      print "true.\n"
  
      is_defined = defined int_1
      print "The Integer "
      print int_1
      print " is "
      if is_defined goto LABEL_4
      print "not "
  LABEL_4: 
      print "defined.\n"
      end
  .end
  CODE
  A newly created Integer is not true.
  A newly created Integer is defined.
  The Integer -999999999 is true.
  The Integer -999999999 is defined.
  OUTPUT
  
  output_is(<<'CODE', <<'OUTPUT', "set_string_native");
  ##PIR##
  .sub _main
      .local pmc pmc1
      pmc1 = new Integer
      pmc1 = "-123456789"
      print pmc1
      print "\n"
      end
  .end
  CODE
  -123456789
  OUTPUT
  
  output_is(<<'CODE', <<'OUTPUT', "isa");
  ##PIR##
  .sub _main
      .local pmc pmc1
      pmc1 = new Integer
  
      .local int pmc1_is_a
      pmc1_is_a = isa pmc1, "Integer"
      print "A newly created Integer is "
      if pmc1_is_a goto PMC1_IS_A_INTEGER
        print "not "
  PMC1_IS_A_INTEGER:
      print "an Integer.\n"
  
      end
  .end
  CODE
  A newly created Integer is an Integer.
  OUTPUT
  
  output_is(<< 'CODE', << 'OUTPUT', "check wether interface is done");
  ##PIR##
  .sub _main
      .local pmc pmc1
      pmc1 = new Float
      .local int bool1
      does bool1, pmc1, "scalar"
      print bool1
      print "\n"
      does bool1, pmc1, "no_interface"
      print bool1
      print "\n"
      end
  .end
  CODE
  1
  0
  OUTPUT
  
  
  

Reply via email to