Skip to content

Commit 0cdf7be

Browse files
committed
Merge branch 'PHP-8.5'
* PHP-8.5: Reorganize ext/uri tests - withers (php#19970)
2 parents c930a98 + 27bc7c0 commit 0cdf7be

File tree

119 files changed

+2371
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

119 files changed

+2371
-0
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - fragment - reserved characters
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri = Uri\Rfc3986\Uri::parse("https://example.com");
9+
10+
try {
11+
$uri->withFragment("#fragment");
12+
} catch (Uri\InvalidUriException $e) {
13+
echo $e->getMessage() . "\n";
14+
}
15+
16+
?>
17+
--EXPECT--
18+
The specified fragment is malformed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - fragment - unicode characters
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri = Uri\Rfc3986\Uri::parse("https://example.com");
9+
10+
try {
11+
$uri->withFragment("ő");
12+
} catch (Uri\InvalidUriException $e) {
13+
echo $e->getMessage() . "\n";
14+
}
15+
16+
?>
17+
--EXPECT--
18+
The specified fragment is malformed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - fragment - empty string
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri1 = Uri\Rfc3986\Uri::parse("https://example.com");
9+
$uri2 = $uri1->withFragment("");
10+
11+
var_dump($uri1->getRawFragment());
12+
var_dump($uri2->getRawFragment());
13+
var_dump($uri2->toRawString());
14+
var_dump($uri2->getFragment());
15+
var_dump($uri2->toString());
16+
17+
?>
18+
--EXPECT--
19+
NULL
20+
string(0) ""
21+
string(20) "https://example.com#"
22+
string(0) ""
23+
string(20) "https://example.com#"
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - fragment - URL encoded characters
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri1 = Uri\Rfc3986\Uri::parse("https://example.com");
9+
$uri2 = $uri1->withFragment("foo%3db%61r"); // foo=bar
10+
11+
var_dump($uri1->getRawFragment());
12+
var_dump($uri2->getRawFragment());
13+
var_dump($uri2->toRawString());
14+
var_dump($uri2->getFragment());
15+
var_dump($uri2->toString());
16+
17+
?>
18+
--EXPECT--
19+
NULL
20+
string(11) "foo%3db%61r"
21+
string(31) "https://example.com#foo%3db%61r"
22+
string(9) "foo%3Dbar"
23+
string(29) "https://example.com#foo%3Dbar"
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - fragment - changing an existing one
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri1 = Uri\Rfc3986\Uri::parse("https://example.com#foo");
9+
$uri2 = $uri1->withFragment("bar");
10+
11+
var_dump($uri1->getRawFragment());
12+
var_dump($uri2->getRawFragment());
13+
var_dump($uri2->toRawString());
14+
var_dump($uri2->getFragment());
15+
var_dump($uri2->toString());
16+
17+
?>
18+
--EXPECT--
19+
string(3) "foo"
20+
string(3) "bar"
21+
string(23) "https://example.com#bar"
22+
string(3) "bar"
23+
string(23) "https://example.com#bar"
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - fragment - unsetting existing
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri1 = Uri\Rfc3986\Uri::parse("https://example.com#foo");
9+
$uri2 = $uri1->withFragment(null);
10+
11+
var_dump($uri1->getRawFragment());
12+
var_dump($uri2->getRawFragment());
13+
var_dump($uri2->toRawString());
14+
var_dump($uri2->getFragment());
15+
var_dump($uri2->toString());
16+
17+
?>
18+
--EXPECT--
19+
string(3) "foo"
20+
NULL
21+
string(19) "https://example.com"
22+
NULL
23+
string(19) "https://example.com"
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - fragment - unsetting not-existent
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri1 = Uri\Rfc3986\Uri::parse("https://example.com");
9+
$uri2 = $uri1->withFragment(null);
10+
11+
var_dump($uri1->getRawFragment());
12+
var_dump($uri2->getRawFragment());
13+
var_dump($uri2->toRawString());
14+
var_dump($uri2->getFragment());
15+
var_dump($uri2->toString());
16+
17+
?>
18+
--EXPECT--
19+
NULL
20+
NULL
21+
string(19) "https://example.com"
22+
NULL
23+
string(19) "https://example.com"
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - host - reserved characters
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri = Uri\Rfc3986\Uri::parse("https://example.com");
9+
10+
try {
11+
$uri->withHost("ex#mple.com");
12+
} catch (Uri\InvalidUriException $e) {
13+
echo $e->getMessage() . "\n";
14+
}
15+
16+
?>
17+
--EXPECT--
18+
The specified host is malformed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - host - empty string
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri1 = Uri\Rfc3986\Uri::parse("https://example.com");
9+
$uri2 = $uri1->withHost("");
10+
11+
var_dump($uri1->getRawHost());
12+
var_dump($uri2->getRawHost());
13+
var_dump($uri2->toRawString());
14+
var_dump($uri2->getHost());
15+
var_dump($uri2->toString());
16+
17+
?>
18+
--EXPECT--
19+
string(11) "example.com"
20+
string(0) ""
21+
string(8) "https://"
22+
string(0) ""
23+
string(8) "https://"
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
Test Uri\Rfc3986\Uri component modification - host - URL encoded characters
3+
--EXTENSIONS--
4+
uri
5+
--FILE--
6+
<?php
7+
8+
$uri1 = Uri\Rfc3986\Uri::parse("https://example.com");
9+
$uri2 = $uri1->withHost("%65xample.net"); // example.net
10+
11+
var_dump($uri1->getRawHost());
12+
var_dump($uri2->getRawHost());
13+
var_dump($uri2->toRawString());
14+
var_dump($uri2->getHost());
15+
var_dump($uri2->toString());
16+
17+
?>
18+
--EXPECT--
19+
string(11) "example.com"
20+
string(13) "%65xample.net"
21+
string(21) "https://%65xample.net"
22+
string(11) "example.net"
23+
string(19) "https://example.net"

0 commit comments

Comments
 (0)