Treat COIDs with query or fragment as invalid
This commit is contained in:
1 parent
b9141326b1
commit
b3c810473f
2 files changed
+45
-6
No files matched your search
@@ -50,6 +50,24 @@ class COIDParserTest extends \PHPUnit\Framework\TestCase {
|
||||
|
||||
$coid = new IRI('coid://exAMPle.CoM');
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
|
||||
$coid = new IRI('coid://example.com#hash=something');
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
|
||||
$coid = new IRI('coid://example.com?query=something');
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
|
||||
$coid = new IRI('coid://example.com/Example/1.0?query=something');
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
|
||||
$coid = new IRI('coid://example.com/Example#hash');
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
|
||||
$coid = new IRI('coid://example.com?');
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
|
||||
$coid = new IRI('coid://example.com#');
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
}
|
||||
|
||||
public function testUnversionedCOID() {
|
||||
@@ -145,4 +163,20 @@ class COIDParserTest extends \PHPUnit\Framework\TestCase {
|
||||
$this->assertFalse($coid1->equals($coid4));
|
||||
}
|
||||
|
||||
public function testQueryAndFragmentFromString() {
|
||||
$coid = COIDParser::fromString('example.com/Example?query=something');
|
||||
$this->assertEquals('coid://example.com/Example?query=something', (string)$coid);
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
|
||||
$coid = COIDParser::fromString('COID://Example.com/Example/1.0#hash');
|
||||
$this->assertEquals('coid://example.com/Example/1.0#hash', (string)$coid);
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
|
||||
$coid = COIDParser::fromString('example.com?');
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
|
||||
$coid = COIDParser::fromString('example.com#');
|
||||
$this->assertEquals(COIDParser::COID_INVALID, COIDParser::getType($coid));
|
||||
}
|
||||
|
||||
}
|
||||
Reference in new issue
Block a user