remm        01/04/22 23:51:54

  Modified:    httpclient/src/test/org/apache/commons/httpclient
                        TestMethods.java
  Log:
  - Add very basic tests for GET and HEAD. Some more specific test will require
    deploying a custom web application, and this more advanced test suite
    will be part of Tomcat 4.
  
  Revision  Changes    Path
  1.2       +128 -5    
jakarta-commons-sandbox/httpclient/src/test/org/apache/commons/httpclient/TestMethods.java
  
  Index: TestMethods.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons-sandbox/httpclient/src/test/org/apache/commons/httpclient/TestMethods.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TestMethods.java  2001/04/22 05:45:28     1.1
  +++ TestMethods.java  2001/04/23 06:51:53     1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-commons-sandbox/httpclient/src/test/org/apache/commons/httpclient/TestMethods.java,v
 1.1 2001/04/22 05:45:28 remm Exp $
  - * $Revision: 1.1 $
  - * $Date: 2001/04/22 05:45:28 $
  + * $Header: 
/home/cvs/jakarta-commons-sandbox/httpclient/src/test/org/apache/commons/httpclient/TestMethods.java,v
 1.2 2001/04/23 06:51:53 remm Exp $
  + * $Revision: 1.2 $
  + * $Date: 2001/04/23 06:51:53 $
    *
    * ====================================================================
    *
  @@ -70,20 +70,36 @@
    * configuration of Tomcat 4 is used as the server.
    * 
    * @author Remy Maucherat
  - * @version $Id: TestMethods.java,v 1.1 2001/04/22 05:45:28 remm Exp $
  + * @version $Id: TestMethods.java,v 1.2 2001/04/23 06:51:53 remm Exp $
    */
   public class TestMethods extends TestCase {
   
  +
  +    // -------------------------------------------------------------- Constants
  +
  +
  +    private static final String host = "127.0.0.1";
  +    private static final int port = 8080;
  +
  +
  +    // ------------------------------------------------------------ Constructor
  +
  +
       public TestMethods(String testName) {
           super(testName);
       }
   
  +
  +    // ------------------------------------------------------- TestCase Methods
  +
  +
       public static Test suite() {
           return new TestSuite(TestMethods.class);
       }
  +
  +
  +    // ----------------------------------------------------------- OPTIONS Test
   
  -    private String host = "127.0.0.1";
  -    private int port = 8080;
   
       public void testMethodsOptions() {
   
  @@ -104,5 +120,112 @@
                  methodsAllowed.hasMoreElements());
   
       }
  +
  +
  +    // --------------------------------------------------------------- GET Test
  +
  +
  +    public void testMethodsGet() {
  +
  +        HttpClient client = new HttpClient();
  +        client.startSession(host, port);
  +
  +        OptionsMethod opmethod = new OptionsMethod("/");
  +
  +        try {
  +            client.executeMethod(opmethod);
  +        } catch (Throwable t) {
  +            t.printStackTrace();
  +            fail("Unable to execute method : " + t.toString());
  +        }
  +
  +        GetMethod method = new GetMethod("/");
  +        method.setUseDisk(false);
  +
  +        try {
  +            client.executeMethod(method);
  +        } catch (Throwable t) {
  +            t.printStackTrace();
  +            fail("Unable to execute method : " + t.toString());
  +        }
  +
  +        try {
  +            String data = method.getDataAsString();
  +            // This enumeration musn't be empty
  +            assert("No data returned.",
  +                   (data.length() > 0));
  +        } catch (Throwable t) {
  +            t.printStackTrace();
  +            fail("Unable to execute method : " + t.toString());
  +        }
  +
  +        method.recycle();
  +        method.setPath("/index.html");
  +        method.setUseDisk(true);
  +
  +        try {
  +            client.executeMethod(method);
  +        } catch (Throwable t) {
  +            t.printStackTrace();
  +            fail("Unable to execute method : " + t.toString());
  +        }
  +
  +        try {
  +            String data = method.getDataAsString();
  +            // This enumeration musn't be empty
  +            assert("No data returned.",
  +                   (data.length() > 0));
  +        } catch (Throwable t) {
  +            t.printStackTrace();
  +            fail("Unable to execute method : " + t.toString());
  +        }
  +
  +    }
  +
  +
  +    // -------------------------------------------------------------- HEAD Test
  +
  +
  +    public void testMethodsHead() {
  +
  +        HttpClient client = new HttpClient();
  +        client.startSession(host, port);
  +
  +        OptionsMethod opmethod = new OptionsMethod("/");
  +
  +        try {
  +            client.executeMethod(opmethod);
  +        } catch (Throwable t) {
  +            t.printStackTrace();
  +            fail("Unable to execute method : " + t.toString());
  +        }
  +
  +        HeadMethod method = new HeadMethod("/");
  +
  +        try {
  +            client.executeMethod(method);
  +        } catch (Throwable t) {
  +            t.printStackTrace();
  +            fail("Unable to execute method : " + t.toString());
  +        }
  +
  +        assert("Method failed : " + method.getStatusCode(), 
  +               (method.getStatusCode() == 200));
  +
  +        method.recycle();
  +        method.setPath("/index.html");
  +
  +        try {
  +            client.executeMethod(method);
  +        } catch (Throwable t) {
  +            t.printStackTrace();
  +            fail("Unable to execute method : " + t.toString());
  +        }
  +
  +        assert("Method failed : " + method.getStatusCode(), 
  +               (method.getStatusCode() == 200));
  +
  +    }
  +
   
   }
  
  
  

Reply via email to