Upgrade to CGI.pm 3.42
[p5sagit/p5-mst-13.2.git] / lib / CGI / t / upload.t
index 9f92ca4..58f0971 100644 (file)
@@ -29,32 +29,45 @@ use CGI;
 # %ENV setup.
 #-----------------------------------------------------------------------------
 
-%ENV = (
-    %ENV,
-    'SCRIPT_NAME'       => '/test.cgi',
-    'SERVER_NAME'       => 'perl.org',
-    'HTTP_CONNECTION'   => 'TE, close',
-    'REQUEST_METHOD'    => 'POST',
-    'SCRIPT_URI'        => 'http://www.perl.org/test.cgi',
-    'CONTENT_LENGTH'    => 3285,
-    'SCRIPT_FILENAME'   => '/home/usr/test.cgi',
-    'SERVER_SOFTWARE'   => 'Apache/1.3.27 (Unix) ',
-    'HTTP_TE'           => 'deflate,gzip;q=0.3',
-    'QUERY_STRING'      => '',
-    'REMOTE_PORT'       => '1855',
-    'HTTP_USER_AGENT'   => 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)',
-    'SERVER_PORT'       => '80',
-    'REMOTE_ADDR'       => '127.0.0.1',
-    'CONTENT_TYPE'      => 'multipart/form-data; boundary=xYzZY',
-    'SERVER_PROTOCOL'   => 'HTTP/1.1',
-    'PATH'              => '/usr/local/bin:/usr/bin:/bin',
-    'REQUEST_URI'       => '/test.cgi',
-    'GATEWAY_INTERFACE' => 'CGI/1.1',
-    'SCRIPT_URL'        => '/test.cgi',
-    'SERVER_ADDR'       => '127.0.0.1',
-    'DOCUMENT_ROOT'     => '/home/develop',
-    'HTTP_HOST'         => 'www.perl.org'
-);
+my %myenv;
+
+BEGIN {
+    %myenv = (
+        'SCRIPT_NAME'       => '/test.cgi',
+        'SERVER_NAME'       => 'perl.org',
+        'HTTP_CONNECTION'   => 'TE, close',
+        'REQUEST_METHOD'    => 'POST',
+        'SCRIPT_URI'        => 'http://www.perl.org/test.cgi',
+        'CONTENT_LENGTH'    => 3285,
+        'SCRIPT_FILENAME'   => '/home/usr/test.cgi',
+        'SERVER_SOFTWARE'   => 'Apache/1.3.27 (Unix) ',
+        'HTTP_TE'           => 'deflate,gzip;q=0.3',
+        'QUERY_STRING'      => '',
+        'REMOTE_PORT'       => '1855',
+        'HTTP_USER_AGENT'   => 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)',
+        'SERVER_PORT'       => '80',
+        'REMOTE_ADDR'       => '127.0.0.1',
+        'CONTENT_TYPE'      => 'multipart/form-data; boundary=xYzZY',
+        'SERVER_PROTOCOL'   => 'HTTP/1.1',
+        'PATH'              => '/usr/local/bin:/usr/bin:/bin',
+        'REQUEST_URI'       => '/test.cgi',
+        'GATEWAY_INTERFACE' => 'CGI/1.1',
+        'SCRIPT_URL'        => '/test.cgi',
+        'SERVER_ADDR'       => '127.0.0.1',
+        'DOCUMENT_ROOT'     => '/home/develop',
+        'HTTP_HOST'         => 'www.perl.org'
+    );
+
+    for my $key (keys %myenv) {
+        $ENV{$key} = $myenv{$key};
+    }
+}
+
+END {
+    for my $key (keys %myenv) {
+        delete $ENV{$key};
+    }
+}
 
 #-----------------------------------------------------------------------------
 # Simulate the upload (really, multiple uploads contained in a single stream).
@@ -81,7 +94,8 @@ is( $q->param('300x300_gif')       , '300x300.gif'       , 'filename_4' );
 { 
     my $test = "multiple file names are handled right with same-named upload fields";
     my @hello_names = $q->param('hello_world');
-    is_deeply(\@hello_names, [ 'goodbye_world.txt','hello_world.txt' ], $test);
+    is ($hello_names[0],'goodbye_world.txt',$test. "...first file");
+    is ($hello_names[1],'hello_world.txt',$test. "...second file");
 }
 
 #-----------------------------------------------------------------------------