diff options
author | Roeland Jago Douma <roeland@famdouma.nl> | 2016-10-10 10:51:13 +0200 |
---|---|---|
committer | Roeland Jago Douma <roeland@famdouma.nl> | 2016-10-10 10:51:13 +0200 |
commit | 7d2f70ef72b2aacb1be9868c5cb613aa0cdcda57 (patch) | |
tree | a844a21e96e144825609d8d342a04811544f146e /apps/user_ldap/tests | |
parent | bdf4bf46698f3239b9552e2e8cc30501bfc5a399 (diff) | |
download | nextcloud-server-7d2f70ef72b2aacb1be9868c5cb613aa0cdcda57.tar.gz nextcloud-server-7d2f70ef72b2aacb1be9868c5cb613aa0cdcda57.zip |
Use more IConfig and add unit tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Diffstat (limited to 'apps/user_ldap/tests')
-rw-r--r-- | apps/user_ldap/tests/HelperTest.php | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/apps/user_ldap/tests/HelperTest.php b/apps/user_ldap/tests/HelperTest.php new file mode 100644 index 00000000000..ca0bbcc4e81 --- /dev/null +++ b/apps/user_ldap/tests/HelperTest.php @@ -0,0 +1,95 @@ +<?php + +namespace OCA\User_LDAP\Tests; + + +use OCA\User_LDAP\Helper; +use OCP\IConfig; + +class HelperTest extends \Test\TestCase { + + /** @var IConfig|\PHPUnit_Framework_MockObject_MockObject */ + private $config; + + /** @var Helper */ + private $helper; + + public function setUp() { + parent::setUp(); + + $this->config = $this->createMock(IConfig::class); + $this->helper = new Helper($this->config); + } + + public function testGetServerConfigurationPrefixes() { + $this->config->method('getAppKeys') + ->with($this->equalTo('user_ldap')) + ->willReturn([ + 'foo', + 'ldap_configuration_active', + 's1ldap_configuration_active', + ]); + + $result = $this->helper->getServerConfigurationPrefixes(false); + + $this->assertEquals(['', 's1'], $result); + } + + public function testGetServerConfigurationPrefixesActive() { + $this->config->method('getAppKeys') + ->with($this->equalTo('user_ldap')) + ->willReturn([ + 'foo', + 'ldap_configuration_active', + 's1ldap_configuration_active', + ]); + + $this->config->method('getAppValue') + ->will($this->returnCallback(function($app, $key, $default) { + if ($app !== 'user_ldap') { + $this->fail('wrong app'); + } + if ($key === 's1ldap_configuration_active') { + return '1'; + } + return $default; + })); + + $result = $this->helper->getServerConfigurationPrefixes(true); + + $this->assertEquals(['s1'], $result); + } + + public function testGetServerConfigurationHost() { + $this->config->method('getAppKeys') + ->with($this->equalTo('user_ldap')) + ->willReturn([ + 'foo', + 'ldap_host', + 's1ldap_host', + 's02ldap_host', + ]); + + $this->config->method('getAppValue') + ->will($this->returnCallback(function($app, $key, $default) { + if ($app !== 'user_ldap') { + $this->fail('wrong app'); + } + if ($key === 'ldap_host') { + return 'example.com'; + } + if ($key === 's1ldap_host') { + return 'foo.bar.com'; + } + return $default; + })); + + $result = $this->helper->getServerConfigurationHosts(); + + $this->assertEquals([ + '' => 'example.com', + 's1' => 'foo.bar.com', + 's02' => '', + ], $result); + } +} |