assertEquals($validator->isValid(''), false); $this->assertEquals($validator->isValid(null), false); $this->assertEquals($validator->isValid(false), false); $this->assertEquals($validator->isValid('cname-unit-test.appwrite.org'), true); $this->assertEquals($validator->isValid('test1.appwrite.org'), false); } public function testA(): void { // IPv4 for documentation purposes $validator = new DNS('203.0.113.1', DNS::RECORD_A); $this->assertEquals($validator->isValid(''), false); $this->assertEquals($validator->isValid(null), false); $this->assertEquals($validator->isValid(false), false); $this->assertEquals($validator->isValid('a-unit-test.appwrite.org'), true); $this->assertEquals($validator->isValid('test1.appwrite.org'), false); } public function testAAAA(): void { // IPv6 for documentation purposes $validator = new DNS('2001:db8::1', DNS::RECORD_AAAA); $this->assertEquals($validator->isValid(''), false); $this->assertEquals($validator->isValid(null), false); $this->assertEquals($validator->isValid(false), false); $this->assertEquals($validator->isValid('aaaa-unit-test.appwrite.org'), true); $this->assertEquals($validator->isValid('test1.appwrite.org'), false); } public function testCAA(): void { $validator = new DNS('digicert.com', DNS::RECORD_CAA); $this->assertEquals($validator->isValid('github.com'), true); $this->assertEquals($validator->isValid('test1.appwrite.org'), true); $validator = new DNS('0 issue "digicert.com"', DNS::RECORD_CAA); $this->assertEquals($validator->isValid('github.com'), true); $validator = new DNS('0 issuewild "digicert.com"', DNS::RECORD_CAA); $this->assertEquals($validator->isValid('github.com'), true); $validator = new DNS('128 issue "digicert.com"', DNS::RECORD_CAA); $this->assertEquals($validator->isValid('github.com'), false); $validator = new DNS('letsencrypt.org', DNS::RECORD_CAA); $this->assertEquals($validator->isValid('github.com'), false); // Valid becasue no CAA record configured $validator = new DNS('anything.com', DNS::RECORD_CAA); $this->assertEquals($validator->isValid('cloud.appwrite.io'), true); // Valid becasue no CAA record configured $validator = new DNS('something.org', DNS::RECORD_CAA); $this->assertEquals($validator->isValid('cloud.appwrite.io'), true); } }