Author: ts
Date: Mon Sep 24 10:12:39 2007
New Revision: 6239

Log:
- Integrated handling of headers for response objects (new struct
  ezcWebdavDisplayInformation).
- Added handling of OPTIONS requests.
- Restructured response tests.
# Need to use serialization here, too, now because of
# ezcWebdavDisplayInformation.

Added:
    trunk/Webdav/src/structs/display_information.php   (with props)
    trunk/Webdav/tests/clients/rfc/copy/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/copy/response/result.ser
    trunk/Webdav/tests/clients/rfc/copy_collection/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/copy_collection/response/result.ser
    trunk/Webdav/tests/clients/rfc/copy_overwrite/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/copy_overwrite/response/result.ser
    trunk/Webdav/tests/clients/rfc/copy_success/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/copy_success/response/result.ser
    trunk/Webdav/tests/clients/rfc/delete/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/delete/response/result.ser
    trunk/Webdav/tests/clients/rfc/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/lock_1/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/lock_2/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/lock_3/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/lockdiscovery/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/lockdiscovery/response/result.ser
    trunk/Webdav/tests/clients/rfc/mkcol/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/move_collection/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/move_collection/response/result.ser
    trunk/Webdav/tests/clients/rfc/move_resource/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/propfind_allprop/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/propfind_allprop/response/result.ser
    trunk/Webdav/tests/clients/rfc/propfind_prop/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/propfind_prop/response/result.ser
    trunk/Webdav/tests/clients/rfc/propfind_propname/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/propfind_propname/response/result.ser
    trunk/Webdav/tests/clients/rfc/proppatch/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/supportedlock/info.txt   (with props)
    trunk/Webdav/tests/clients/rfc/supportedlock/response/result.ser
    trunk/Webdav/tests/clients/rfc/unlock/info.txt   (with props)
Removed:
    trunk/Webdav/tests/clients/rfc/copy/response/result.php
    trunk/Webdav/tests/clients/rfc/copy_collection/response/result.php
    trunk/Webdav/tests/clients/rfc/copy_overwrite/response/result.php
    trunk/Webdav/tests/clients/rfc/copy_success/response/result.php
    trunk/Webdav/tests/clients/rfc/delete/response/result.php
    trunk/Webdav/tests/clients/rfc/lockdiscovery/response/result.php
    trunk/Webdav/tests/clients/rfc/move_collection/response/result.php
    trunk/Webdav/tests/clients/rfc/propfind_allprop/response/result.php
    trunk/Webdav/tests/clients/rfc/propfind_prop/response/result.php
    trunk/Webdav/tests/clients/rfc/propfind_propname/response/result.php
    trunk/Webdav/tests/clients/rfc/supportedlock/response/result.php
Modified:
    trunk/Webdav/design/class_diagram.png
    trunk/Webdav/src/backend/simple.php
    trunk/Webdav/src/interfaces/backend.php
    trunk/Webdav/src/response/options.php
    trunk/Webdav/src/transport.php
    trunk/Webdav/src/webdav_autoload.php
    trunk/Webdav/tests/classes/transport_test_mock.php
    trunk/Webdav/tests/client_test.php
    trunk/Webdav/tests/client_test_rfc_backend.php
    trunk/Webdav/tests/response_options_test.php

Modified: trunk/Webdav/design/class_diagram.png
==============================================================================
Binary files - no diff available.

Modified: trunk/Webdav/src/backend/simple.php
==============================================================================
--- trunk/Webdav/src/backend/simple.php [iso-8859-1] (original)
+++ trunk/Webdav/src/backend/simple.php [iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1022,6 +1022,22 @@
             $collection
         );
     }
+
+    /**
+     * Required method to serve OPTIONS requests.
+     * 
+     * The method receives a [EMAIL PROTECTED] ezcWebdavOptionsRequest} object 
containing all
+     * relevant information obout the clients request and should either return
+     * an error by returning an [EMAIL PROTECTED] ezcWebdavErrorResponse} 
object, or any
+     * other [EMAIL PROTECTED] ezcWebdavResponse} objects.
+     *
+     * @param ezcWebdavOptionsRequest $request
+     * @return ezcWebdavResponse
+     */
+    public function options( ezcWebdavOptionsRequest $request )
+    {
+        return new ezcWebdavOptionsResponse();
+    }
 }
 
 ?>

Modified: trunk/Webdav/src/interfaces/backend.php
==============================================================================
--- trunk/Webdav/src/interfaces/backend.php [iso-8859-1] (original)
+++ trunk/Webdav/src/interfaces/backend.php [iso-8859-1] Mon Sep 24 10:12:39 
2007
@@ -87,6 +87,8 @@
                 return $this->propFind( $request );
             case ( $request instanceof ezcWebdavPropPatchRequest ):
                 return $this->propPatch( $request );
+            case ( $request instanceof ezcWebdavOptionsRequest ):
+                return $this->options( $request );
             case ( $request instanceof ezcWebdavDeleteRequest ):
                 if ( $this instanceof ezcWebdavBackendChange )
                 {
@@ -214,6 +216,19 @@
      * @return ezcWebdavResponse
      */
     abstract public function propPatch( ezcWebdavPropPatchRequest $request );
+
+    /**
+     * Required method to serve OPTIONS requests.
+     * 
+     * The method receives a [EMAIL PROTECTED] ezcWebdavOptionsRequest} object 
containing all
+     * relevant information obout the clients request and should either return
+     * an error by returning an [EMAIL PROTECTED] ezcWebdavErrorResponse} 
object, or any
+     * other [EMAIL PROTECTED] ezcWebdavResponse} objects.
+     *
+     * @param ezcWebdavOptionsRequest $request
+     * @return ezcWebdavResponse
+     */
+    abstract public function options( ezcWebdavOptionsRequest $request );
 }
 
 ?>

Modified: trunk/Webdav/src/response/options.php
==============================================================================
--- trunk/Webdav/src/response/options.php [iso-8859-1] (original)
+++ trunk/Webdav/src/response/options.php [iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -30,48 +30,10 @@
      * @param mixed $resource 
      * @return void
      */
-    public function __construct( $resource )
+    public function __construct( $version = null )
     {
         parent::__construct( ezcWebdavResponse::STATUS_200 );
-
-        $this->resource = $resource;
-
-        // @TODO: Check for correctness
-        $this->headers['DAV'] = '1, 2, 1#extended';
-    }
-
-    /**
-     * Sets a property.
-     * This method is called when an property is to be set.
-     * 
-     * @param string $propertyName The name of the property to set.
-     * @param mixed $propertyValue The property value.
-     * @ignore
-     *
-     * @throws ezcBasePropertyNotFoundException
-     *         if the given property does not exist.
-     * @throws ezcBaseValueException
-     *         if the value to be assigned to a property is invalid.
-     * @throws ezcBasePropertyPermissionException
-     *         if the property to be set is a read-only property.
-     */
-    public function __set( $propertyName, $propertyValue )
-    {
-        switch ( $propertyName )
-        {
-            case 'resource':
-                if ( ( ! $propertyValue instanceof ezcWebdavResource ) &&
-                     ( ! $propertyValue instanceof ezcWebdavCollection ) )
-                {
-                    throw new ezcBaseValueException( $propertyName, 
$propertyValue, 'ezcWebdavResource or ezcWebdavCollection' );
-                }
-
-                $this->properties[$propertyName] = $propertyValue;
-                break;
-
-            default:
-                parent::__set( $propertyName, $propertyValue );
-        }
+        $this->headers['DAV'] = ( $version === null ? '1, 2, 1#extended' : 
null );
     }
 
     /**

Added: trunk/Webdav/src/structs/display_information.php
==============================================================================
--- trunk/Webdav/src/structs/display_information.php (added)
+++ trunk/Webdav/src/structs/display_information.php [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -1,0 +1,53 @@
+<?php
+/**
+ * File containing the class ezcWebdavDisplayInformation.
+ *
+ * @package Webdav
+ * @version //autogentag//
+ * @copyright Copyright (C) 2005-2007 eZ systems as. All rights reserved.
+ * @license http://ez.no/licenses/new_bsd New BSD License
+ */
+/**
+ * Display information.
+ *
+ * Used by [EMAIL PROTECTED] ezcWebdavTransport} to transport information on 
displaying a
+ * response to the browser.
+ *
+ * @version //autogentag//
+ * @package Webdav
+ * @copyright Copyright (C) 2005-2007 eZ systems as. All rights reserved.
+ * @license http://ez.no/licenses/new_bsd New BSD License
+ */
+class ezcWebdavDisplayInformation
+{
+    
+    /**
+     * Creates a new struct.
+     * 
+     * @param ezcWebdavResponse $response 
+     * @param DOMDocument $body 
+     * @return void
+     */
+    public function __construct( ezcWebdavResponse $response, DOMDocument 
$body = null )
+    {
+        $this->response = $response;
+        $this->body     = $body;
+    }
+
+    /**
+     * Response object to extract headers from.
+     * 
+     * @var ezcWebdavResponse
+     */
+    public $response;
+
+    /**
+     * DOMDocument representing the response body.
+     * Should be empty, if no body should be send.
+     * 
+     * @var DOMDocument|null
+     */
+    public $body;
+}
+
+?>

Propchange: trunk/Webdav/src/structs/display_information.php
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/Webdav/src/transport.php
==============================================================================
--- trunk/Webdav/src/transport.php [iso-8859-1] (original)
+++ trunk/Webdav/src/transport.php [iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -96,7 +96,8 @@
                 return $this->parseMakeCollectionRequest( $path, $body );
             case 'MOVE':
                 return $this->parseMoveRequest( $path, $body );
-                // @TODO: OPTIONS
+            case 'OPTIONS':
+                return $this->parseOptionsRequest( $path, $body );
             case 'PROPFIND':
                 return $this->parsePropFindRequest( $path, $body );
             case 'PROPPATCH':
@@ -574,6 +575,24 @@
     {
         return new ezcWebdavMakeCollectionRequest( $path, ( trim( $body ) === 
'' ? null : $body ) );
     }
+    
+    // OPTIONS
+
+    /**
+     * Parses the OPTIONS request and returns a request object.
+     * This method is responsible for parsing the OPTIONS request. It
+     * retrieves the current request URI in $path and the request body as 
$body.
+     * The return value, if no exception is thrown, is a valid [EMAIL 
PROTECTED]
+     * ezcWebdavOptionsRequest} object.
+     * 
+     * @param string $path 
+     * @param string $body 
+     * @return ezcWebdavOptionsRequest
+     */
+    protected function parseOptionsRequest( $path, $body )
+    {
+        return new ezcWebdavOptionsRequest( $path, ( trim( $body ) === '' ? 
null : $body ) );
+    }
 
     // PROPFIND
 
@@ -644,6 +663,7 @@
         }
         return $request;
     }
+    
 
     /**
      * Returns extracted properties in an ezcWebdavPropertyStorage.
@@ -1011,7 +1031,7 @@
      */
     public function handleResponse( ezcWebdavResponse $response )
     {
-        $this->sendResponse( $response, $this->processResponse( $response ) );
+        $this->sendResponse( $this->processResponse( $response ) );
     }
 
     /**
@@ -1022,42 +1042,45 @@
      */
     protected function processResponse( ezcWebdavResponse $response )
     {
-        $dom = null;
+        $displayInfo = null;
 
         switch ( ( $responseClass = get_class( $response ) ) )
         {
             case 'ezcWebdavPropFindResponse':
-                $dom = $this->processPropFindResponse( $response );
+                $displayInfo = $this->processPropFindResponse( $response );
                 break;
             case 'ezcWebdavMultistatusResponse':
-                $dom = $this->processMultiStatusResponse( $response );
+                $displayInfo = $this->processMultiStatusResponse( $response );
                 break;
             case 'ezcWebdavCopyResponse':
-                $dom = $this->processCopyResponse( $response );
+                $displayInfo = $this->processCopyResponse( $response );
                 break;
             case 'ezcWebdavDeleteResponse':
-                $dom = $this->processDeleteResponse( $response );
+                $displayInfo = $this->processDeleteResponse( $response );
                 break;
             case 'ezcWebdavErrorResponse':
-                $dom = $this->processErrorResponse( $response );
+                $displayInfo = $this->processErrorResponse( $response );
                 break;
             case 'ezcWebdavGetCollectionResponse':
-                $dom = $this->processGetCollectionResponse( $response );
-                break;
+                $displayInfo = $this->processGetCollectionResponse( $response 
);
+                break;
+            case 'ezcWebdavOptionsResponse':
+                $displayInfo = $this->processOptionsResponse( $response );
+                break;
+            case 'ezcWebdavPropPatchResponse':
+                // $displayInfo = $this->processPropPatchResponse( $response );
+                // break;
             case 'ezcWebdavGetResourceResponse':
             case 'ezcWebdavHeadResponse':
             case 'ezcWebdavMakeCollectionResponse':
             case 'ezcWebdavMoveResponse':
-            case 'ezcWebdavOptionsResponse':
-            case 'ezcWebdavPropPatchResponse':
             case 'ezcWebdavPutResponse':
             default:
                 // @TODO: Implement!
                 throw new RuntimeException( "Serialization of class 
$responseClass not implemented, yet." );
-            
-        }
-
-        return $dom;
+        }
+
+        return $displayInfo;
     }
 
     /**
@@ -1070,13 +1093,13 @@
      * @param DOMDocument $dom 
      * @return void
      */
-    protected function sendResponse( ezcWebdavResponse $response, DOMDocument 
$dom = null )
-    {
-        header( (string) $response );
-        if ( $dom instanceof DOMDocument )
-        {
-            $dom->formatOutput = true;
-            echo $dom->saveXML( $dom );
+    protected function sendResponse( ezcWebdavDisplayInformation $info )
+    {
+        header( (string) $info->response );
+        if ( $info->body instanceof DOMDocument )
+        {
+            $info->body->formatOutput = true;
+            echo $info->body->saveXML( $info->body );
         }
     }
 
@@ -1097,11 +1120,11 @@
         foreach ( $response->responses as $subResponse )
         {
             $multistatusElement->appendChild(
-                $dom->importNode( $this->processResponse( $subResponse 
)->documentElement, true )
+                $dom->importNode( $this->processResponse( $subResponse 
)->body->documentElement, true )
             );
         }
         
-        return $dom;
+        return new ezcWebdavDisplayInformation( $response, $dom );
     }
 
     /**
@@ -1125,10 +1148,10 @@
         foreach ( $response->responses as $propStat )
         {
             $responseElement->appendChild(
-                $dom->importNode( $this->processPropStatResponse( $propStat 
)->documentElement, true )
-            );
-        }
-        return $dom;
+                $dom->importNode( $this->processPropStatResponse( $propStat 
)->body->documentElement, true )
+            );
+        }
+        return new ezcWebdavDisplayInformation( $response, $dom );
     }
 
     /**
@@ -1139,7 +1162,7 @@
      */
     protected function processCopyResponse( ezcWebdavCopyResponse $response )
     {
-        return null;
+        return new ezcWebdavDisplayInformation( $response, null );
     }
 
     /**
@@ -1150,7 +1173,7 @@
      */
     protected function processDeleteResponse( ezcWebdavDeleteResponse 
$response )
     {
-        return null;
+        return new ezcWebdavDisplayInformation( $response, null );
     }
 
     /**
@@ -1175,7 +1198,7 @@
             $this->newDomElement( $dom, 'status' )
         )->nodeValue = (string) $response;
 
-        return $dom;
+        return new ezcWebdavDisplayInformation( $response, $dom );
     }
 
     /**
@@ -1187,7 +1210,18 @@
     protected function processGetCollectionResponse( 
ezcWebdavGetCollectionResponse $response )
     {
         $dom = $this->getDom();
-        return $dom;
+        return new ezcWebdavDisplayInformation( $response, $dom );
+    }
+
+    /**
+     * Returns an XML representation of the given response object.
+     * 
+     * @param ezcWebdavOptionsResponse $response 
+     * @return DOMDocument|null
+     */
+    protected function processOptionsResponse( ezcWebdavOptionsResponse 
$response )
+    {
+        return new ezcWebdavDisplayInformation( $response, null );
     }
 
     /**
@@ -1216,7 +1250,7 @@
             )
         )->nodeValue = (string) $response;
 
-        return $dom;
+        return new ezcWebdavDisplayInformation( $response, $dom );
     }
 
     /**

Modified: trunk/Webdav/src/webdav_autoload.php
==============================================================================
--- trunk/Webdav/src/webdav_autoload.php [iso-8859-1] (original)
+++ trunk/Webdav/src/webdav_autoload.php [iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -43,6 +43,7 @@
     'ezcWebdavDeadProperty'                    => 'Webdav/properties/dead.php',
     'ezcWebdavDeleteRequest'                   => 'Webdav/request/delete.php',
     'ezcWebdavDeleteResponse'                  => 'Webdav/response/delete.php',
+    'ezcWebdavDisplayInformation'              => 
'Webdav/structs/display_information.php',
     'ezcWebdavDisplayNameProperty'             => 
'Webdav/properties/displayname.php',
     'ezcWebdavErrorResponse'                   => 'Webdav/response/error.php',
     'ezcWebdavFileBackend'                     => 'Webdav/backend/file.php',

Modified: trunk/Webdav/tests/classes/transport_test_mock.php
==============================================================================
--- trunk/Webdav/tests/classes/transport_test_mock.php [iso-8859-1] (original)
+++ trunk/Webdav/tests/classes/transport_test_mock.php [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -7,10 +7,9 @@
         return isset( $GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_BODY'] ) ? 
$GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_BODY'] : '';
     }
 
-    protected function sendResponse( ezcWebdavResponse $response, DOMDocument 
$dom = null )
+    protected function sendResponse( ezcWebdavDisplayInformation $info )
     {
-        $GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_RESPONSE_HEADERS'][] = (string) 
$response;
-        $GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_RESPONSE_BODY'] = ( $dom !== null 
? $dom->saveXML( $dom, LIBXML_NSCLEAN ) : null );
+        $GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_DISPLAY_INFO'] = $info;
     }
 }
 

Modified: trunk/Webdav/tests/client_test.php
==============================================================================
--- trunk/Webdav/tests/client_test.php [iso-8859-1] (original)
+++ trunk/Webdav/tests/client_test.php [iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -163,18 +163,30 @@
         $responseObject = $response['backend']->performRequest( $requestObject 
);
         
         $this->transport->handleResponse( $responseObject );
-        $responseHeaders = 
$GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_RESPONSE_HEADERS'];
-        $responseBody    = $GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_RESPONSE_BODY'];
+        $responseHeaders = array_merge( 
+            array( (string) 
$GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_DISPLAY_INFO']->response ),
+            
$GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_DISPLAY_INFO']->response->getHeaders()
+        );
+        
+        if ( $GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_DISPLAY_INFO']->body !== null 
)
+        {
+            
$GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_DISPLAY_INFO']->body->formatOutput = true;
+            $responseBody = 
$GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_DISPLAY_INFO']->body->saveXML( 
$GLOBALS['EZC_WEBDAV_TRANSPORT_TEST_DISPLAY_INFO']->body );
+        }
+        else
+        {
+            $responseBody = null;
+        }
 
 
         if ( $response['result'] === false )
         {
             // Regenerate
             file_put_contents(
-                "{$this->currentTestSet}/response/result.php",
-                "<?php\nreturn " . var_export( array( "headers" => 
$responseHeaders, "body" => $responseBody ), true ) . ";\n?>"
+                "{$this->currentTestSet}/response/result.ser",
+                serialize( array( "headers" => $responseHeaders, "body" => 
$responseBody ) )
             );
-            if ( trim( $response['body'] ) === '' || trim( $responseBody ) === 
'' )
+            if ( trim( $response['body'] ) === '' || $responseBody === null )
             {
                 $this->assertEquals(
                     $response['body'],
@@ -198,7 +210,7 @@
                 $responseHeaders,
                 'Generated headers missmatch.'
             );
-            if ( trim( $response['result']['body'] ) === '' || trim( 
$responseBody ) === '' )
+            if ( trim( $response['result']['body'] ) === '' || $responseBody 
=== null )
             {
                 $this->assertEquals(
                     $response['result']['body'],

Modified: trunk/Webdav/tests/client_test_rfc_backend.php
==============================================================================
--- trunk/Webdav/tests/client_test_rfc_backend.php [iso-8859-1] (original)
+++ trunk/Webdav/tests/client_test_rfc_backend.php [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -21,6 +21,7 @@
             case 'copy_success':
             case 'copy':
             case 'copy_overwrite':
+            case 'options':
                 return self::getIcsUciSetup1();
             case 'move_resource':
                 return self::getIcsUciSetup2();

Added: trunk/Webdav/tests/clients/rfc/copy/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/copy/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/copy/info.txt [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/copy/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/copy/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/copy/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/copy/response/result.ser [iso-8859-1] Mon 
Sep 24 10:12:39 2007
@@ -1,0 +1,1 @@
+a:2:{s:7:"headers";a:1:{i:0;s:23:"HTTP/1.1 204 No Content";}s:4:"body";N;}

Added: trunk/Webdav/tests/clients/rfc/copy_collection/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/copy_collection/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/copy_collection/info.txt [iso-8859-1] Mon 
Sep 24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/copy_collection/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/copy_collection/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/copy_collection/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/copy_collection/response/result.ser 
[iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1,0 +1,20 @@
+a:2:{s:7:"headers";a:1:{i:0;s:25:"HTTP/1.1 207 
Multi-Status";}s:4:"body";s:599:"<?xml version="1.0" encoding="UTF-8"?>
+<D:multistatus xmlns:D="DAV:">
+  <D:response>
+    <D:href>http://foo.bar/container</D:href>
+    <D:status>HTTP/1.1 423 Locked</D:status>
+  </D:response>
+  <D:response>
+    <D:href>http://foo.bar/container/front.html</D:href>
+    <D:status>HTTP/1.1 423 Locked</D:status>
+  </D:response>
+  <D:response>
+    <D:href>http://foo.bar/container/R2</D:href>
+    <D:status>HTTP/1.1 423 Locked</D:status>
+  </D:response>
+  <D:response>
+    <D:href>http://foo.bar/container/resource3</D:href>
+    <D:status>HTTP/1.1 423 Locked</D:status>
+  </D:response>
+</D:multistatus>
+";}

Added: trunk/Webdav/tests/clients/rfc/copy_overwrite/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/copy_overwrite/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/copy_overwrite/info.txt [iso-8859-1] Mon Sep 
24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/copy_overwrite/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/copy_overwrite/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/copy_overwrite/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/copy_overwrite/response/result.ser 
[iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1,0 +1,6 @@
+a:2:{s:7:"headers";a:1:{i:0;s:32:"HTTP/1.1 412 Precondition 
Failed";}s:4:"body";s:199:"<?xml version="1.0" encoding="UTF-8"?>
+<D:response xmlns:D="DAV:">
+  <D:href>http://foo.bar/users/f/fielding/index.html</D:href>
+  <D:status>HTTP/1.1 412 Precondition Failed</D:status>
+</D:response>
+";}

Added: trunk/Webdav/tests/clients/rfc/copy_success/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/copy_success/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/copy_success/info.txt [iso-8859-1] Mon Sep 
24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/copy_success/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/copy_success/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/copy_success/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/copy_success/response/result.ser 
[iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1,0 +1,1 @@
+a:2:{s:7:"headers";a:1:{i:0;s:23:"HTTP/1.1 204 No Content";}s:4:"body";N;}

Added: trunk/Webdav/tests/clients/rfc/delete/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/delete/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/delete/info.txt [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/delete/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/delete/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/delete/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/delete/response/result.ser [iso-8859-1] Mon 
Sep 24 10:12:39 2007
@@ -1,0 +1,6 @@
+a:2:{s:7:"headers";a:1:{i:0;s:19:"HTTP/1.1 423 
Locked";}s:4:"body";s:168:"<?xml version="1.0" encoding="UTF-8"?>
+<D:response xmlns:D="DAV:">
+  <D:href>http://foo.bar/container</D:href>
+  <D:status>HTTP/1.1 423 Locked</D:status>
+</D:response>
+";}

Added: trunk/Webdav/tests/clients/rfc/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/info.txt [iso-8859-1] Mon Sep 24 10:12:39 
2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/lock_1/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/lock_1/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/lock_1/info.txt [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/lock_1/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/lock_2/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/lock_2/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/lock_2/info.txt [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/lock_2/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/lock_3/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/lock_3/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/lock_3/info.txt [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/lock_3/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/lockdiscovery/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/lockdiscovery/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/lockdiscovery/info.txt [iso-8859-1] Mon Sep 
24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/lockdiscovery/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/lockdiscovery/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/lockdiscovery/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/lockdiscovery/response/result.ser 
[iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1,0 +1,40 @@
+a:2:{s:7:"headers";a:1:{i:0;s:25:"HTTP/1.1 207 
Multi-Status";}s:4:"body";s:991:"<?xml version="1.0" encoding="UTF-8"?>
+<D:multistatus xmlns:D="DAV:">
+  <D:repsonse>
+    <D:href>http://foo.bar/container</D:href>
+    <D:propstat>
+      <D:prop>
+        <D:lockdiscovery/>
+      </D:prop>
+      <D:status>HTTP/1.1 404 Not Found</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/front.html</D:href>
+    <D:propstat>
+      <D:prop>
+        <D:lockdiscovery/>
+      </D:prop>
+      <D:status>HTTP/1.1 404 Not Found</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/R2</D:href>
+    <D:propstat>
+      <D:prop>
+        <D:lockdiscovery/>
+      </D:prop>
+      <D:status>HTTP/1.1 404 Not Found</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/resource3</D:href>
+    <D:propstat>
+      <D:prop>
+        <D:lockdiscovery/>
+      </D:prop>
+      <D:status>HTTP/1.1 404 Not Found</D:status>
+    </D:propstat>
+  </D:repsonse>
+</D:multistatus>
+";}

Added: trunk/Webdav/tests/clients/rfc/mkcol/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/mkcol/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/mkcol/info.txt [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/mkcol/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/move_collection/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/move_collection/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/move_collection/info.txt [iso-8859-1] Mon 
Sep 24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/move_collection/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/move_collection/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/move_collection/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/move_collection/response/result.ser 
[iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1,0 +1,20 @@
+a:2:{s:7:"headers";a:1:{i:0;s:25:"HTTP/1.1 207 
Multi-Status";}s:4:"body";s:599:"<?xml version="1.0" encoding="UTF-8"?>
+<D:multistatus xmlns:D="DAV:">
+  <D:response>
+    <D:href>http://foo.bar/container</D:href>
+    <D:status>HTTP/1.1 423 Locked</D:status>
+  </D:response>
+  <D:response>
+    <D:href>http://foo.bar/container/front.html</D:href>
+    <D:status>HTTP/1.1 423 Locked</D:status>
+  </D:response>
+  <D:response>
+    <D:href>http://foo.bar/container/R2</D:href>
+    <D:status>HTTP/1.1 423 Locked</D:status>
+  </D:response>
+  <D:response>
+    <D:href>http://foo.bar/container/resource3</D:href>
+    <D:status>HTTP/1.1 423 Locked</D:status>
+  </D:response>
+</D:multistatus>
+";}

Added: trunk/Webdav/tests/clients/rfc/move_resource/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/move_resource/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/move_resource/info.txt [iso-8859-1] Mon Sep 
24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/move_resource/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/propfind_allprop/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/propfind_allprop/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/propfind_allprop/info.txt [iso-8859-1] Mon 
Sep 24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/propfind_allprop/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/propfind_allprop/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/propfind_allprop/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/propfind_allprop/response/result.ser 
[iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1,0 +1,89 @@
+a:2:{s:7:"headers";a:1:{i:0;s:25:"HTTP/1.1 207 
Multi-Status";}s:4:"body";s:2792:"<?xml version="1.0" encoding="UTF-8"?>
+<D:multistatus xmlns:D="DAV:">
+  <D:repsonse xmlns:R="http://www.foo.bar/boxschema/";>
+    <D:href>http://foo.bar/container</D:href>
+    <D:propstat xmlns:R="http://www.foo.bar/boxschema/";>
+      <D:prop>
+        <R:bigbox xmlns:R="http://www.foo.bar/boxschema/";>
+          <R:BoxType>Box type A</R:BoxType>
+        </R:bigbox>
+        <R:author xmlns:R="http://www.foo.bar/boxschema/";>
+          <R:Name>Hadrian</R:Name>
+        </R:author>
+        <D:creationdate>1997-12-01T17:42:21-0800</D:creationdate>
+        <D:displayname>Example collection</D:displayname>
+        <D:resourcetype/>
+        <D:supportedlock>
+          <D:lockentry>
+            <D:lockscope>
+              <D:exclusive/>
+            </D:lockscope>
+            <D:locktype>
+              <D:write/>
+            </D:locktype>
+          </D:lockentry>
+          <D:lockentry>
+            <D:lockscope>
+              <D:shared/>
+            </D:lockscope>
+            <D:locktype>
+              <D:read/>
+            </D:locktype>
+          </D:lockentry>
+        </D:supportedlock>
+      </D:prop>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse xmlns:R="http://www.foo.bar/boxschema/";>
+    <D:href>http://foo.bar/container/front.html</D:href>
+    <D:propstat xmlns:R="http://www.foo.bar/boxschema/";>
+      <D:prop>
+        <R:bigbox xmlns:R="http://www.foo.bar/boxschema/";>
+          <R:BoxType>Box type B</R:BoxType>
+        </R:bigbox>
+        <D:creationdate>1997-12-01T18:27:21-0800</D:creationdate>
+        <D:displayname>Example HTML resource</D:displayname>
+        <D:getcontentlength>4525</D:getcontentlength>
+        <D:getcontenttype>text/html</D:getcontenttype>
+        <D:getetag>zzyzx</D:getetag>
+        <D:getlastmodified>1998-01-12T09:25:56+0000</D:getlastmodified>
+        <D:resourcetype/>
+        <D:supportedlock>
+          <D:lockentry>
+            <D:lockscope>
+              <D:exclusive/>
+            </D:lockscope>
+            <D:locktype>
+              <D:write/>
+            </D:locktype>
+          </D:lockentry>
+          <D:lockentry>
+            <D:lockscope>
+              <D:shared/>
+            </D:lockscope>
+            <D:locktype>
+              <D:read/>
+            </D:locktype>
+          </D:lockentry>
+        </D:supportedlock>
+      </D:prop>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/R2</D:href>
+    <D:propstat>
+      <D:prop/>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/resource3</D:href>
+    <D:propstat>
+      <D:prop/>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+</D:multistatus>
+";}

Added: trunk/Webdav/tests/clients/rfc/propfind_prop/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/propfind_prop/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/propfind_prop/info.txt [iso-8859-1] Mon Sep 
24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/propfind_prop/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/propfind_prop/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/propfind_prop/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/propfind_prop/response/result.ser 
[iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1,0 +1,21 @@
+a:2:{s:7:"headers";a:1:{i:0;s:25:"HTTP/1.1 207 
Multi-Status";}s:4:"body";s:747:"<?xml version="1.0" encoding="UTF-8"?>
+<D:multistatus xmlns:D="DAV:">
+  <D:repsonse xmlns:R="http://www.foo.bar/boxschema/";>
+    <D:href>http://foo.bar/file</D:href>
+    <D:propstat xmlns:R="http://www.foo.bar/boxschema/";>
+      <D:prop>
+        <R:bigbox xmlns:R="http://www.foo.bar/boxschema/"/>
+        <R:author xmlns:R="http://www.foo.bar/boxschema/"/>
+      </D:prop>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+    <D:propstat xmlns:R="http://www.foo.bar/boxschema/";>
+      <D:prop>
+        <R:DingALing xmlns:R="http://www.foo.bar/boxschema/"/>
+        <R:Random xmlns:R="http://www.foo.bar/boxschema/"/>
+      </D:prop>
+      <D:status>HTTP/1.1 404 Not Found</D:status>
+    </D:propstat>
+  </D:repsonse>
+</D:multistatus>
+";}

Added: trunk/Webdav/tests/clients/rfc/propfind_propname/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/propfind_propname/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/propfind_propname/info.txt [iso-8859-1] Mon 
Sep 24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/propfind_propname/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/propfind_propname/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/propfind_propname/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/propfind_propname/response/result.ser 
[iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1,0 +1,49 @@
+a:2:{s:7:"headers";a:1:{i:0;s:25:"HTTP/1.1 207 
Multi-Status";}s:4:"body";s:1551:"<?xml version="1.0" encoding="UTF-8"?>
+<D:multistatus xmlns:D="DAV:">
+  <D:repsonse xmlns:ezc00000="http://www.foo.bar/boxschema/";>
+    <D:href>http://foo.bar/container</D:href>
+    <D:propstat xmlns:ezc00000="http://www.foo.bar/boxschema/";>
+      <D:prop>
+        <ezc00000:bigbox xmlns:ezc00000="http://www.foo.bar/boxschema/"/>
+        <ezc00000:author xmlns:ezc00000="http://www.foo.bar/boxschema/"/>
+        <D:creationdate/>
+        <D:displayname/>
+        <D:resourcetype/>
+        <D:supportedlock/>
+      </D:prop>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse xmlns:ezc00000="http://www.foo.bar/boxschema/";>
+    <D:href>http://foo.bar/container/front.html</D:href>
+    <D:propstat xmlns:ezc00000="http://www.foo.bar/boxschema/";>
+      <D:prop>
+        <ezc00000:bigbox xmlns:ezc00000="http://www.foo.bar/boxschema/"/>
+        <D:creationdate/>
+        <D:displayname/>
+        <D:getcontentlength/>
+        <D:getcontenttype/>
+        <D:getetag/>
+        <D:getlastmodified/>
+        <D:resourcetype/>
+        <D:supportedlock/>
+      </D:prop>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/R2</D:href>
+    <D:propstat>
+      <D:prop/>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/resource3</D:href>
+    <D:propstat>
+      <D:prop/>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+</D:multistatus>
+";}

Added: trunk/Webdav/tests/clients/rfc/proppatch/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/proppatch/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/proppatch/info.txt [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/proppatch/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/supportedlock/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/supportedlock/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/supportedlock/info.txt [iso-8859-1] Mon Sep 
24 10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/supportedlock/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/Webdav/tests/clients/rfc/supportedlock/response/result.ser
==============================================================================
--- trunk/Webdav/tests/clients/rfc/supportedlock/response/result.ser (added)
+++ trunk/Webdav/tests/clients/rfc/supportedlock/response/result.ser 
[iso-8859-1] Mon Sep 24 10:12:39 2007
@@ -1,0 +1,40 @@
+a:2:{s:7:"headers";a:1:{i:0;s:25:"HTTP/1.1 207 
Multi-Status";}s:4:"body";s:977:"<?xml version="1.0" encoding="UTF-8"?>
+<D:multistatus xmlns:D="DAV:">
+  <D:repsonse>
+    <D:href>http://foo.bar/container</D:href>
+    <D:propstat>
+      <D:prop>
+        <D:supportedlock/>
+      </D:prop>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/front.html</D:href>
+    <D:propstat>
+      <D:prop>
+        <D:supportedlock/>
+      </D:prop>
+      <D:status>HTTP/1.1 200 OK</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/R2</D:href>
+    <D:propstat>
+      <D:prop>
+        <D:supportedlock/>
+      </D:prop>
+      <D:status>HTTP/1.1 404 Not Found</D:status>
+    </D:propstat>
+  </D:repsonse>
+  <D:repsonse>
+    <D:href>http://foo.bar/container/resource3</D:href>
+    <D:propstat>
+      <D:prop>
+        <D:supportedlock/>
+      </D:prop>
+      <D:status>HTTP/1.1 404 Not Found</D:status>
+    </D:propstat>
+  </D:repsonse>
+</D:multistatus>
+";}

Added: trunk/Webdav/tests/clients/rfc/unlock/info.txt
==============================================================================
--- trunk/Webdav/tests/clients/rfc/unlock/info.txt (added)
+++ trunk/Webdav/tests/clients/rfc/unlock/info.txt [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -1,0 +1,1 @@
+Test information generated from RFC 2518 on http://ietf.org/rfc/rfc2518.txt

Propchange: trunk/Webdav/tests/clients/rfc/unlock/info.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/Webdav/tests/response_options_test.php
==============================================================================
--- trunk/Webdav/tests/response_options_test.php [iso-8859-1] (original)
+++ trunk/Webdav/tests/response_options_test.php [iso-8859-1] Mon Sep 24 
10:12:39 2007
@@ -29,12 +29,7 @@
 
     public function testResourceOptionsUnknownProperty()
     {
-        $response = new ezcWebdavOptionsResponse(
-            new ezcWebdavResource(
-                '/path',
-                new ezcWebdavPropertyStorage()
-            )
-        );
+        $response = new ezcWebdavOptionsResponse();
 
         try
         {
@@ -51,12 +46,7 @@
 
     public function testResourceSetUnknownProperty()
     {
-        $response = new ezcWebdavOptionsResponse(
-            new ezcWebdavResource(
-                '/path',
-                new ezcWebdavPropertyStorage()
-            )
-        );
+        $response = new ezcWebdavOptionsResponse();
 
         try
         {
@@ -72,13 +62,7 @@
 
     public function testCollectionOptionsUnknownProperty()
     {
-        $response = new ezcWebdavOptionsResponse(
-            new ezcWebdavCollection(
-                '/path',
-                new ezcWebdavPropertyStorage(),
-                array()
-            )
-        );
+        $response = new ezcWebdavOptionsResponse();
 
         try
         {
@@ -95,13 +79,7 @@
 
     public function testCollectionSetUnknownProperty()
     {
-        $response = new ezcWebdavOptionsResponse(
-            new ezcWebdavCollection(
-                '/path',
-                new ezcWebdavPropertyStorage(),
-                array()
-            )
-        );
+        $response = new ezcWebdavOptionsResponse();
 
         try
         {
@@ -115,41 +93,9 @@
         $this->fail( 'Expected ezcBasePropertyNotFoundException.' );
     }
 
-    public function testResourceSetPropertyResource()
-    {
-        $response = new ezcWebdavOptionsResponse(
-            $resource = new ezcWebdavResource(
-                '/path',
-                new ezcWebdavPropertyStorage()
-            )
-        );
-
-        $this->assertSame(
-            $resource,
-            $response->resource,
-            'Wrong default value for property resource in class 
ezcWebdavOptionsResponse.'
-        );
-
-        try
-        {
-            $response->resource = 200;
-        }
-        catch ( ezcBaseValueException $e )
-        {
-            return true;
-        }
-
-        $this->fail( 'Expected ezcBaseValueException.' );
-    }
-
     public function testValidateHeadersSuccess()
     {
-        $response = new ezcWebdavOptionsResponse(
-            $resource = new ezcWebdavResource(
-                '/path',
-                new ezcWebdavPropertyStorage()
-            )
-        );
+        $response = new ezcWebdavOptionsResponse();
 
         $response->validateHeaders();
         $this->assertEquals(
@@ -184,12 +130,7 @@
 
     public function testValidateHeadersFailure()
     {
-        $response = new ezcWebdavOptionsResponse(
-            $resource = new ezcWebdavResource(
-                '/path',
-                new ezcWebdavPropertyStorage()
-            )
-        );
+        $response = new ezcWebdavOptionsResponse();
 
         $response->setHeader( 'DAV', null );
 


-- 
svn-components mailing list
[email protected]
http://lists.ez.no/mailman/listinfo/svn-components

Reply via email to