Esempio n. 1
0
 public function testParameter()
 {
     $emptyUrl = new Url('');
     $this->assertSame('?test=value', (string) $emptyUrl->parameter('test', 'value'));
     $this->assertSame('?test%5B0%5D=value', (string) $emptyUrl->parameter('test[]', 'value'));
     $this->assertSame('?test%5B99%5D=value', (string) $emptyUrl->parameter('test[99]', 'value'));
     $urlWithParam = new Url('?param=1');
     $this->assertSame('?param%5B0%5D=1&param%5B1%5D=value', (string) $urlWithParam->parameter('param[]', 'value'));
     $urlWithParams = new Url('?param[0]=123&param[4]=456');
     $this->assertSame('?param%5B0%5D=123&param%5B4%5D=456&param%5B5%5D=value', (string) $urlWithParams->parameter('param[]', 'value'));
     $this->assertSame('?param%5B0%5D=123&param%5B4%5D=value', (string) $urlWithParams->parameter('param[4]', 'value'));
     $this->assertSame('?param%5B0%5D=123&param%5B4%5D=value', (string) $urlWithParams->parameter('param', 'value', 4));
     $this->assertSame('?param%5B0%5D=123', (string) $urlWithParams->removeParameter('param[4]'));
     $this->assertSame('?param%5B0%5D=123', (string) $urlWithParams->removeParameter('param', 4));
 }