1
0
Fork 0
mirror of synced 2024-07-03 05:31:38 +12:00
appwrite/tests/unit/Network/Validators/OriginTest.php

64 lines
3.1 KiB
PHP
Raw Normal View History

2020-04-15 07:53:41 +12:00
<?php
namespace Appwrite\Tests;
2020-06-12 07:36:10 +12:00
use Appwrite\Network\Validator\Origin;
2020-04-15 07:53:41 +12:00
use PHPUnit\Framework\TestCase;
class OriginTest extends TestCase
{
public function testValues()
{
$validator = new Origin([
[
'$collection' => 'platforms',
'name' => 'Production',
'type' => 'web',
'hostname' => 'appwrite.io',
],
[
'$collection' => 'platforms',
'name' => 'Development',
'type' => 'web',
'hostname' => 'appwrite.test',
],
[
'$collection' => 'platforms',
'name' => 'Localhost',
'type' => 'web',
'hostname' => 'localhost',
],
]);
$this->assertEquals($validator->isValid('https://localhost'), true);
$this->assertEquals($validator->isValid('http://localhost'), true);
$this->assertEquals($validator->isValid('http://localhost:80'), true);
$this->assertEquals($validator->isValid('https://appwrite.io'), true);
$this->assertEquals($validator->isValid('http://appwrite.io'), true);
$this->assertEquals($validator->isValid('http://appwrite.io:80'), true);
$this->assertEquals($validator->isValid('https://appwrite.test'), true);
$this->assertEquals($validator->isValid('http://appwrite.test'), true);
$this->assertEquals($validator->isValid('http://appwrite.test:80'), true);
$this->assertEquals($validator->isValid('https://example.com'), false);
$this->assertEquals($validator->isValid('http://example.com'), false);
$this->assertEquals($validator->isValid('http://example.com:80'), false);
$this->assertEquals($validator->isValid('appwrite-ios://com.company.appname'), false);
2020-06-16 09:32:34 +12:00
$this->assertEquals($validator->getDescription(), 'Invalid Origin. Register your new client (com.company.appname) as a new iOS platform on your project console dashboard');
2020-04-15 07:53:41 +12:00
$this->assertEquals($validator->isValid('appwrite-android://com.company.appname'), false);
2020-06-16 09:32:34 +12:00
$this->assertEquals($validator->getDescription(), 'Invalid Origin. Register your new client (com.company.appname) as a new Android platform on your project console dashboard');
2020-04-15 07:53:41 +12:00
$this->assertEquals($validator->isValid('appwrite-macos://com.company.appname'), false);
2020-06-16 09:32:34 +12:00
$this->assertEquals($validator->getDescription(), 'Invalid Origin. Register your new client (com.company.appname) as a new macOS platform on your project console dashboard');
2020-04-15 07:53:41 +12:00
$this->assertEquals($validator->isValid('appwrite-linux://com.company.appname'), false);
2020-06-16 09:32:34 +12:00
$this->assertEquals($validator->getDescription(), 'Invalid Origin. Register your new client (com.company.appname) as a new Linux platform on your project console dashboard');
2020-04-15 07:53:41 +12:00
$this->assertEquals($validator->isValid('appwrite-windows://com.company.appname'), false);
2020-06-16 09:32:34 +12:00
$this->assertEquals($validator->getDescription(), 'Invalid Origin. Register your new client (com.company.appname) as a new Windows platform on your project console dashboard');
2020-04-15 07:53:41 +12:00
}
}