tests/libjava-mauve/src/gnu/testlet/java/net/HttpURLConnection/responseCodeTest.java
branchjk_new_structure
changeset 1541 75c2e24dea9a
parent 1540 92ac284961c1
child 1542 be11db817bcf
--- a/tests/libjava-mauve/src/gnu/testlet/java/net/HttpURLConnection/responseCodeTest.java	Fri Jul 20 21:39:51 2012 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,165 +0,0 @@
-//Tags: JDK1.1
-//Uses: TestHttpServer
-
-//Copyright (C) 2006 Free Software Foundation, Inc.
-//Written by Wolfgang Baer (WBaer@gmx.de)
-
-//This file is part of Mauve.
-
-//Mauve is free software; you can redistribute it and/or modify
-//it under the terms of the GNU General Public License as published by
-//the Free Software Foundation; either version 2, or (at your option)
-//any later version.
-
-//Mauve is distributed in the hope that it will be useful,
-//but WITHOUT ANY WARRANTY; without even the implied warranty of
-//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//GNU General Public License for more details.
-
-//You should have received a copy of the GNU General Public License
-//along with Mauve; see the file COPYING.  If not, write to
-//the Free Software Foundation, 51 Franklin Street, Fifth Floor,
-//Boston, MA, 02110-1301 USA.
-
-package gnu.testlet.java.net.HttpURLConnection;
-
-import gnu.testlet.TestHarness;
-import gnu.testlet.Testlet;
-
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStreamWriter;
-import java.io.Writer;
-import java.net.HttpURLConnection;
-import java.net.Socket;
-import java.net.URL;
-import java.util.List;
-
-/**
- * Tests correct behaviour of getInputStream(), getErrorStream()
- * for all error response codes.
- */
-public class responseCodeTest implements Testlet
-{
-  /**
-   * Starts an HTTP server and calls
-   * the test_ResponseCode for the error codes.
-   */
-  public void test(TestHarness h) 
-  {  
-    TestHttpServer server = null;
-    try
-      {
-      	try
-      	  {
-            server = new TestHttpServer();
-      	  }
-      	catch (IOException ioe)
-      	  {
-      	    h.debug(ioe);
-      	    h.fail("Could not start server");
-      	    return;
-      	  }
-
-        for (int i=400; i < 418; i++)
-          test_ResponseCode(i, h, server);
-        
-        for (int i=500; i < 506; i++)
-          test_ResponseCode(i, h, server);
-      }
-    finally
-      {
-        if (server != null)
-          server.killTestServer();
-      }
-  }
-  
-  static class Factory implements TestHttpServer.ConnectionHandlerFactory
-  {
-    private int responseCode;
-    Factory(int responseCode)
-    {
-      this.responseCode = responseCode;
-    }
-    
-    public TestHttpServer.ConnectionHandler newConnectionHandler(Socket s)
-      throws IOException
-    {
-       return new Handler(s, responseCode);
-    }
-  }
-  
-  static class Handler extends TestHttpServer.ConnectionHandler
-  {
-    private int responseCode;
-    private Writer sink;
-    
-    Handler(Socket socket, int responseCode) throws IOException
-    {
-      super(socket);
-      this.responseCode = responseCode;
-      sink = new OutputStreamWriter(output,"US-ASCII");
-    }
-
-    protected boolean processConnection(List headers, byte[] body)
-      throws IOException
-    {
-      sink.write("HTTP/1.0 " + responseCode + " OK\r\n");
-      sink.write("Server: TestServer\r\n\r\n");
-      sink.close();
-      return false;
-    }
-  }
-  
-  public void test_ResponseCode(int responseCode, 
-      TestHarness h, TestHttpServer server)
-  {    
-    try
-      {
-        server.setConnectionHandlerFactory(new Factory(responseCode));
-        URL url = new URL("http://localhost:" + server.getPort() + "/");
-        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
-        conn.setRequestMethod("GET");
-        
-        h.checkPoint("Test " + responseCode + " response");
-
-        // test the responsecode
-        int code = conn.getResponseCode();
-        h.check(code == responseCode);
-
-        // getInputStream should always throw an IOException
-        try 
-          {
-            conn.getInputStream();
-            h.check(false);
-          }
-        catch (IOException e)
-          {
-            // for a 404/410 it must be a FNFE
-            if (responseCode == 404 
-                || responseCode == 410)
-              {
-                // Since JDK 1.5 as FNFE is thrown - so this will fail for 1.4
-                if (e instanceof FileNotFoundException)
-                  h.check(true);
-                else
-                  h.check(false);
-              }
-            else
-              h.check(true);
-          }
-        
-        // the errorstream must be set always
-        InputStream error = conn.getErrorStream();
-        h.check(error != null);
-        
-        conn.disconnect();       
-      }   
-    catch (IOException e)
-      {       
-        h.debug("Unexpected IOException");
-        h.debug(e);
-      }
-  }
-}