-
Notifications
You must be signed in to change notification settings - Fork 0
/
FlatRendererTest.php
41 lines (33 loc) · 1.1 KB
/
FlatRendererTest.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
namespace BenTools\QueryString\Tests;
use PHPUnit\Framework\TestCase;
use function BenTools\QueryString\flat;
use function BenTools\QueryString\query_string;
class FlatRendererTest extends TestCase
{
public function testRenderer()
{
$data = [
'foo' => 'bar',
'foos' => [
'bar',
'foo bar',
],
'fruits' => [
'banana' => 'yellow',
'strawberry' => 'red',
],
];
$qs = query_string($data);
$renderer = flat();
$this->assertEquals('foo=bar&foos=bar&foos=foo%20bar&fruits=yellow&fruits=red', (string) $qs->withRenderer(
$renderer
));
$this->assertEquals('foo=bar&foos=bar&foos=foo+bar&fruits=yellow&fruits=red', (string) $qs->withRenderer(
$renderer->withEncoding(PHP_QUERY_RFC1738)
));
$this->assertEquals('foo=bar;foos=bar;foos=foo+bar;fruits=yellow;fruits=red', (string) $qs->withRenderer(
$renderer->withEncoding(PHP_QUERY_RFC1738)->withSeparator(';')
));
}
}