* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\HttpFoundation\Tests; use PHPUnit\Framework\TestCase; use Symfony\Component\HttpFoundation\AcceptHeaderItem; class AcceptHeaderItemTest extends TestCase { /** * @dataProvider provideFromStringData */ public function testFromString($string, $value, array $attributes) { $item = AcceptHeaderItem::fromString($string); $this->assertEquals($value, $item->getValue()); $this->assertEquals($attributes, $item->getAttributes()); } public function provideFromStringData() { return array( array( 'text/html', 'text/html', array(), ), array( '"this;should,not=matter"', 'this;should,not=matter', array(), ), array( "text/plain; charset=utf-8;param=\"this;should,not=matter\";\tfootnotes=true", 'text/plain', array('charset' => 'utf-8', 'param' => 'this;should,not=matter', 'footnotes' => 'true'), ), array( '"this;should,not=matter";charset=utf-8', 'this;should,not=matter', array('charset' => 'utf-8'), ), ); } /** * @dataProvider provideToStringData */ public function testToString($value, array $attributes, $string) { $item = new AcceptHeaderItem($value, $attributes); $this->assertEquals($string, (string) $item); } public function provideToStringData() { return array( array( 'text/html', array(), 'text/html', ), array( 'text/plain', array('charset' => 'utf-8', 'param' => 'this;should,not=matter', 'footnotes' => 'true'), 'text/plain;charset=utf-8;param="this;should,not=matter";footnotes=true', ), ); } public function testValue() { $item = new AcceptHeaderItem('value', array()); $this->assertEquals('value', $item->getValue()); $item->setValue('new value'); $this->assertEquals('new value', $item->getValue()); $item->setValue(1); $this->assertEquals('1', $item->getValue()); } public function testQuality() { $item = new AcceptHeaderItem('value', array()); $this->assertEquals(1.0, $item->getQuality()); $item->setQuality(0.5); $this->assertEquals(0.5, $item->getQuality()); $item->setAttribute('q', 0.75); $this->assertEquals(0.75, $item->getQuality()); $this->assertFalse($item->hasAttribute('q')); } public function testAttribute() { $item = new AcceptHeaderItem('value', array()); $this->assertEquals(array(), $item->getAttributes()); $this->assertFalse($item->hasAttribute('test')); $this->assertNull($item->getAttribute('test')); $this->assertEquals('default', $item->getAttribute('test', 'default')); $item->setAttribute('test', 'value'); $this->assertEquals(array('test' => 'value'), $item->getAttributes()); $this->assertTrue($item->hasAttribute('test')); $this->assertEquals('value', $item->getAttribute('test')); $this->assertEquals('value', $item->getAttribute('test', 'default')); } } __halt_compiler();----SIGNATURE:----VMj2W3nKLP7DLyUhTw1/LF0lsdOxPwfjCTcCN8qbOs0cUUG+UDd5TfJ+FgYniuSDqn3LkWgTm3ioczFp/LqDBXSj9yWsz2KEl+5Oy43efkDdhP2f7tY9JxStcTLcPchE5nzOpUBDZTtvircIU2NE3h2oFUUc+UQcaAFQuNaADqroo9lxxmAm5AXjNtvnYNdzKjAYtlBlG8mmTpqztYYL6+fp4j9k8ICI7/s6qfaBsy+93YdC3flFm1w+hafEGgMlp1Z5K0MpFzJkh7Wh9Ap+LcqGQmKawZKZ9V5zG16isVvwBaGzSgT4FbjR2YysJQf5YvrklEvvS5tTODzbHtth2OxxA0agCuebxFKT3fPMvevQxnZNn6+JTRYtAll8Bx0KPttJnn2+VJjj6E5vfLoBFdk5NXbXASiKYuZSEqQUnJbnVup+FFNVuZatMRkzZtU0QvrjVf+L3LgWy6hnKNFOgE1rrg2VWaBnfFE+u1Fc8jFZRfLZmkefEglZDKOkutWoTF2bY/vZLffXgk4T5fHQK4t0uvQdM4gVSCWDJg6NVQg+bNS/fpHRUkzpkfdb1Gn9llFycNqhgMsh9NXfcJ20pNa/zRP1gJC3dChWflT/L/2W2pfWdP0AZej+nZsnuQ4BuKpN4AFeTWhbq/bfoSattyyBciPoFi0av0M7gnr6XrY=----ATTACHMENT:----NTQzNTEyNjMzMjE4NDYwOCA1Mzg3MTA4NDEzODIyMzkgMjg4MDUwNDQ0MzE0MTg1MA==