home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / perl / os2perl / magic.t < prev    next >
Text File  |  1991-06-16  |  983b  |  33 lines

  1. #!./perl
  2.  
  3. # $Header: magic.t,v 4.0 91/03/20 01:53:35 lwall Locked $
  4.  
  5. $| = 1;        # command buffering
  6.  
  7. print "1..5\n";
  8.  
  9. eval '$ENV{"foo"} = "hi there";';    # check that ENV is inited inside eval
  10. if (`echo %foo%` eq "hi there\n") {print "ok 1\n";} else {print "not ok 1\n";}
  11.  
  12. unlink 'ajslkdfpqjsjfk';
  13. $! = 0;
  14. open(foo,'ajslkdfpqjsjfk');
  15. if ($! == 2) {print "ok 2\n";} else {print "not ok 2\n";}
  16.  
  17. # the next tests are embedded inside system simply because sh spits out
  18. # a newline onto stderr when a child process kills itself with SIGINT.
  19.  
  20. system 'perl',
  21. '-e', '$| = 1;        # command buffering',
  22.  
  23. '-e', '$SIG{"TERM"} = "ok3"; kill 0,$$;',
  24. '-e', '$SIG{"TERM"} = "IGNORE"; kill 0,$$; print "ok 4\n";',
  25. '-e', '$SIG{"TERM"} = "DEFAULT"; kill 0,$$; print "not ok\n";',
  26.  
  27. '-e', 'sub ok3 { print "ok 3\n" if pop(@_) eq "TERM"; }';
  28.  
  29. @val1 = @ENV{keys(%ENV)};    # can we slice ENV?
  30. @val2 = values(%ENV);
  31.  
  32. print join(':',@val1) eq join(':',@val2) ? "ok 5\n" : "not ok 5\n";
  33.