コード例 #1
0
 /**
  * @param InternetMediaType $contentType
  * @return WebResource
  * @throws Exception
  */
 public function removeValidContentType(InternetMediaType $contentType)
 {
     if (array_key_exists($contentType->getTypeSubtypeString(), $this->validContentTypes)) {
         unset($this->validContentTypes[$contentType->getTypeSubtypeString()]);
     }
     if ($this->hasHttpResponse() && !$this->hasValidContentType()) {
         throw new Exception('HTTP response contains invalid content type', 2);
     }
     return $this;
 }
コード例 #2
0
 public function setUp()
 {
     parent::setUp();
     for ($count = 0; $count < self::MEDIA_TYPE_COUNT; $count++) {
         $mediaType = new InternetMediaType();
         $mediaType->setType('foo' . $count);
         $mediaType->setSubtype('bar');
         $this->expectedMediaTypes[$mediaType->getTypeSubtypeString()] = $mediaType;
         $this->resource->addValidContentType($mediaType);
     }
 }
コード例 #3
0
 public function testValidContentTypesMatchThoseAdded()
 {
     $expectedMediaTypes = array();
     for ($count = 0; $count < self::MEDIA_TYPE_COUNT; $count++) {
         $mediaType = new InternetMediaType();
         $mediaType->setType('foo' . $count);
         $mediaType->setSubtype('bar');
         $expectedMediaTypes[$mediaType->getTypeSubtypeString()] = $mediaType;
         $this->resource->addValidContentType($mediaType);
     }
     foreach ($this->resource->getValidContentTypes() as $index => $mediaType) {
         $this->assertEquals($expectedMediaTypes[$index], $mediaType);
     }
 }
コード例 #4
0
 public function testWithSlightlyInvalidMediaTypeString()
 {
     $mediaType = new InternetMediaType();
     $mediaType->setType('text');
     $mediaType->setSubtype('javascript');
     $parameter1 = new Parameter();
     $parameter1->setAttribute('UTF-8');
     $mediaType->addParameter($parameter1);
     $parameter2 = new Parameter();
     $parameter2->setAttribute('charset');
     $parameter2->setValue('UTF-8');
     $mediaType->addParameter($parameter1);
     $mediaType->addParameter($parameter2);
     $this->assertEquals('text/javascript', $mediaType->getTypeSubtypeString());
     $this->assertEquals('text/javascript; utf-8; charset=UTF-8', (string) $mediaType);
 }