]> source.dussan.org Git - nextcloud-server.git/commitdiff
Add DummySubscription for tests 21759/head
authorDaniel Kesselberg <mail@danielkesselberg.de>
Wed, 8 Jul 2020 19:45:08 +0000 (21:45 +0200)
committerMorris Jobke <hey@morrisjobke.de>
Thu, 9 Jul 2020 12:24:00 +0000 (14:24 +0200)
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
tests/lib/Support/Subscription/DummySubscription.php [new file with mode: 0644]
tests/lib/Support/Subscription/RegistryTest.php

diff --git a/tests/lib/Support/Subscription/DummySubscription.php b/tests/lib/Support/Subscription/DummySubscription.php
new file mode 100644 (file)
index 0000000..e1f7f5c
--- /dev/null
@@ -0,0 +1,58 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * @author Daniel Kesselberg <mail@danielkesselberg.de>
+ *
+ * @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 <http://www.gnu.org/licenses/>.
+ *
+ */
+
+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;
+       }
+}
index 2548cfe817f0f59f20f62b424a039db049b46a38..68159aa1b2bb68d0358b21afd49099ee2b77cd4d 100644 (file)
@@ -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());
+       }
 }