From d9f5fdb67a1f06f19d505d7ee76e05163af7e6ce Mon Sep 17 00:00:00 2001 From: Daniel Kesselberg Date: Wed, 8 Jul 2020 21:45:08 +0200 Subject: [PATCH] Add DummySubscription for tests Signed-off-by: Daniel Kesselberg --- .../Subscription/DummySubscription.php | 58 +++++++++++++++++++ .../lib/Support/Subscription/RegistryTest.php | 10 ++++ 2 files changed, 68 insertions(+) create mode 100644 tests/lib/Support/Subscription/DummySubscription.php diff --git a/tests/lib/Support/Subscription/DummySubscription.php b/tests/lib/Support/Subscription/DummySubscription.php new file mode 100644 index 00000000000..e1f7f5c6b61 --- /dev/null +++ b/tests/lib/Support/Subscription/DummySubscription.php @@ -0,0 +1,58 @@ + + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + */ + +namespace Test\Support\Subscription; + +class DummySubscription implements \OCP\Support\Subscription\ISubscription { + + /** @var bool */ + private $hasValidSubscription; + /** @var bool */ + private $hasExtendedSupport; + + /** + * DummySubscription constructor. + * + * @param bool $hasValidSubscription + * @param bool $hasExtendedSupport + */ + public function __construct(bool $hasValidSubscription, bool $hasExtendedSupport) { + $this->hasValidSubscription = $hasValidSubscription; + $this->hasExtendedSupport = $hasExtendedSupport; + } + + /** + * @inheritDoc + */ + public function hasValidSubscription(): bool { + return $this->hasValidSubscription; + } + + /** + * @inheritDoc + */ + public function hasExtendedSupport(): bool { + return $this->hasExtendedSupport; + } +} diff --git a/tests/lib/Support/Subscription/RegistryTest.php b/tests/lib/Support/Subscription/RegistryTest.php index 2548cfe817f..68159aa1b2b 100644 --- a/tests/lib/Support/Subscription/RegistryTest.php +++ b/tests/lib/Support/Subscription/RegistryTest.php @@ -117,4 +117,14 @@ class RegistryTest extends TestCase { $this->assertSame(['abc'], $this->registry->delegateGetSupportedApps()); } + + public function testSubscriptionService() { + $this->serverContainer->method('query') + ->with(DummySubscription::class) + ->willReturn(new DummySubscription(true, false)); + $this->registry->registerService(DummySubscription::class); + + $this->assertTrue($this->registry->delegateHasValidSubscription()); + $this->assertFalse($this->registry->delegateHasExtendedSupport()); + } } -- 2.39.5