You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by st...@apache.org on 2004/01/30 00:34:00 UTC

cvs commit: modperl-2.0/t/response/TestModperl subenv.pm

stas        2004/01/29 15:34:00

  Modified:    t/response/TestModperl subenv.pm
  Log:
  add %ENV tests
  
  Revision  Changes    Path
  1.3       +23 -15    modperl-2.0/t/response/TestModperl/subenv.pm
  
  Index: subenv.pm
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/t/response/TestModperl/subenv.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -u -r1.2 -r1.3
  --- subenv.pm	2 Jun 2002 13:28:18 -0000	1.2
  +++ subenv.pm	29 Jan 2004 23:34:00 -0000	1.3
  @@ -13,26 +13,34 @@
   sub handler {
       my $r = shift;
   
  -    plan $r, tests => 16;
  +    plan $r, tests => 19;
   
       my $env = $r->subprocess_env;
       ok $env;
   
       # subprocess_env in void context populates the same as +SetEnv
  -    ok_false($r, 'REMOTE_ADDR');
  -    $r->subprocess_env; 
  -    ok_true($r, 'REMOTE_ADDR');
  -
  -    $env = $r->subprocess_env; #table may have been overlayed
  -
  -    $env->set(FOO => 1);
  -    ok_true($r, 'FOO');
  -
  -    $r->subprocess_env(FOO => undef);
  -    ok_false($r, 'FOO');
  -
  -    $r->subprocess_env(FOO => 1);
  -    ok_true($r, 'FOO');
  +    {
  +        my $key = 'REMOTE_ADDR';
  +        ok_false($r, $key);
  +        $r->subprocess_env;
  +        ok_true($r, $key);
  +        ok $ENV{$key}; # mod_cgi emulation
  +    }
  +
  +    {
  +        my $key = 'FOO';
  +        $env = $r->subprocess_env; #table may have been overlayed
  +        $env->set($key => 1);
  +        ok_true($r, $key);
  +        ok ! $ENV{$key}; # shouldn't affect %ENV
  +
  +        $r->subprocess_env($key => undef);
  +        ok_false($r, $key);
  +
  +        $r->subprocess_env($key => 1);
  +        ok_true($r, $key);
  +        ok ! $ENV{$key}; # shouldn't affect %ENV
  +    }
   
       Apache::OK;
   }