ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
ilWhiteListUrlValidatorTest.php
Go to the documentation of this file.
1 <?php declare(strict_types=1);
2 
3 /* Copyright (c) 1998-2019 ILIAS open source, Extended GPL, see docs/LICENSE */
4 
6 
12 {
16  public function domainProvider() : array
17  {
18  return [
19  'Empty String / Empty Whitelist' => ['', [], false],
20  'Host without Schema / Empty Whitelist' => ['ilias.de', [], false],
21  'Schema with Host / Empty Whitelist' => ['https://ilias.de', [], false],
22  'Host without Schema' => ['ilias.de', ['ilias.de'], false],
23  'Schema with Host' => ['https://ilias.de', ['ilias.de'], true],
24  'Sub Domain' => ['https://www.ilias.de', ['ilias.de'], true],
25  'Multiple Sub Domains' => ['https://server01.www.ilias.de', ['ilias.de'], true],
26  'Multiple Sub Domains / Whitelist Entry with Leading Dot' => [
27  'https://server01.www.ilias.de',
28  ['.ilias.de'],
29  true
30  ],
31  'Multiple Sub Domains / Whitelist Entry with Sub Domain' => [
32  'https://server01.www.ilias.de',
33  ['www.ilias.de'],
34  true
35  ],
36  'Multiple Sub Domains / Whitelist Entry with Sub Domain and Leading Dot' => [
37  'https://server01.www.ilias.de',
38  ['.www.ilias.de'],
39  true
40  ],
41  'Multiple Sub Domains / Whitelist Entry with Multiple Sub Domains' => [
42  'https://server01.www.ilias.de',
43  ['server01.www.ilias.de'],
44  true
45  ],
46  'Multiple Sub Domains / Whitelist Entry with Multiple Sub Domains and Leading Dot' => [
47  'https://server01.www.ilias.de',
48  ['.server01.www.ilias.de'],
49  false
50  ],
51  ];
52  }
53 
60  public function testValidator(string $domain, array $whitelist, bool $result) : void
61  {
62  require_once 'Services/AuthApache/classes/class.ilWhiteListUrlValidator.php';
63  $this->assertEquals((new ilWhiteListUrlValidator($domain, $whitelist))->isValid(), $result);
64  }
65 }
$result
Class ilWhiteListUrlValidatorTest.
testValidator(string $domain, array $whitelist, bool $result)
domainProvider
Class ilWhiteListUrlValidator.