/**
     * @covers AfsMultipartResponse::parse_headers
     * @covers AfsMultipartResponse::__construct
     * @covers AfsMultipartResponse::get_layer
     * @covers AfsMultipartResponse::get_layers
     * @covers AfsLayer::__construct
     * @covers AfsLayer::get_header
     * @covers AfsLayer::get_mime_type
     * @covers AfsLayer::get_content
     */
    public function testProcess()
    {
        $rawSinglePart = <<<HTTP
Content-Type: text/xml+application/json
Content-Disposition: name="urn:afs:toto-is-1n-7he-kitc4en#VALIDLAYER_1"
Accept: toto
Header: value

contents
HTTP;
        $rawMultipart = <<<HTTP
---70to---
Content-Type: text/xml
Content-Disposition: name="urn:afs:totois1n7hekitc4en#VALIDLAYER_2"

contents1
---70to---
Content-Type: application/json
Content-Disposition: name="urn:afs:totois1n7hekitc4en#VALIDLAYER_3"

contents2
---70to-----
HTTP;
        $singlePart = new AfsMultipartResponse($rawSinglePart);
        $this->assertEquals("contents", $singlePart->get_layer("VALIDLAYER_1")->get_content());
        $this->assertEquals("text/xml+application/json", $singlePart->get_layer('VALIDLAYER_1')->get_mime_type());
        $this->assertEquals("toto", $singlePart->get_layer("VALIDLAYER_1")->get_header("Accept"));
        $multiPart = new AfsMultipartResponse($rawMultipart);
        $this->assertEquals("contents1", $multiPart->get_layer("VALIDLAYER_2")->get_content());
        $this->assertEquals("contents2", $multiPart->get_layer("VALIDLAYER_3")->get_content());
        $l = $multiPart->get_layers();
        $this->assertEquals("text/xml", $l['VALIDLAYER_2']->get_mime_type());
        $this->assertEquals("application/json", $l['VALIDLAYER_3']->get_mime_type());
    }
 /** @brief Upload one document to the PaF.
  * @param $doc [in] simple document (see @a AfsDocument).
  * @param $layers [in] array containing names of layers to retrieve.
  * @return array of AfsLayers(see @a AfsLayer).
  */
 public function process_doc($doc, $layers = array("CONTENTS"))
 {
     $context['layers'] = implode(',', $layers);
     //FIXME enable setting version with mock
     //$context['version'] = "7.7";
     $context['version'] = $this->get_bo_version();
     $context['document'] = $doc;
     $multipart = new AfsMultipartResponse($this->query($context));
     if (is_array($layers)) {
         return $multipart->get_layers();
     } else {
         $l = $multipart->get_layers();
         return $l[$layers];
     }
 }