summaryrefslogtreecommitdiffstats
path: root/tests/lib
diff options
context:
space:
mode:
authorChristoph Wurst <christoph@winzerhof-wurst.at>2023-11-15 15:03:48 +0100
committerChristoph Wurst <christoph@winzerhof-wurst.at>2023-11-15 15:53:38 +0100
commit45541eb685c4f3a5742508afcc02d07e46e64b5f (patch)
tree48b853c62eba367e95f5c0d8b50697d1a2e5fa9c /tests/lib
parentce6e3a3a01ee33fb010382cb33f527dcb8989544 (diff)
downloadnextcloud-server-45541eb685c4f3a5742508afcc02d07e46e64b5f.tar.gz
nextcloud-server-45541eb685c4f3a5742508afcc02d07e46e64b5f.zip
feat(dav): Enable OOO UI and expose enabled via OCP
Makes the feature opt-out now that we have meaningful integrations based on OOO data. Allows instances still to turn the feature off. For apps like Mail that build on top of this feature we need to know if the instance has the feature turned on or off. This is exposed as OCP API, too. Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Diffstat (limited to 'tests/lib')
-rw-r--r--tests/lib/User/AvailabilityCoordinatorTest.php16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/lib/User/AvailabilityCoordinatorTest.php b/tests/lib/User/AvailabilityCoordinatorTest.php
index 8e847f7e5d5..fd850fcdfd7 100644
--- a/tests/lib/User/AvailabilityCoordinatorTest.php
+++ b/tests/lib/User/AvailabilityCoordinatorTest.php
@@ -32,7 +32,9 @@ use OCA\DAV\Db\Absence;
use OCA\DAV\Db\AbsenceMapper;
use OCP\ICache;
use OCP\ICacheFactory;
+use OCP\IConfig;
use OCP\IUser;
+use PHPUnit\Framework\MockObject\MockObject;
use Psr\Log\LoggerInterface;
use Test\TestCase;
@@ -40,6 +42,7 @@ class AvailabilityCoordinatorTest extends TestCase {
private AvailabilityCoordinator $availabilityCoordinator;
private ICacheFactory $cacheFactory;
private ICache $cache;
+ private IConfig|MockObject $config;
private AbsenceMapper $absenceMapper;
private LoggerInterface $logger;
@@ -49,6 +52,7 @@ class AvailabilityCoordinatorTest extends TestCase {
$this->cacheFactory = $this->createMock(ICacheFactory::class);
$this->cache = $this->createMock(ICache::class);
$this->absenceMapper = $this->createMock(AbsenceMapper::class);
+ $this->config = $this->createMock(IConfig::class);
$this->logger = $this->createMock(LoggerInterface::class);
$this->cacheFactory->expects(self::once())
@@ -58,10 +62,22 @@ class AvailabilityCoordinatorTest extends TestCase {
$this->availabilityCoordinator = new AvailabilityCoordinator(
$this->cacheFactory,
$this->absenceMapper,
+ $this->config,
$this->logger,
);
}
+ public function testIsEnabled(): void {
+ $this->config->expects(self::once())
+ ->method('getAppValue')
+ ->with('dav', 'hide_absence_settings', 'no')
+ ->willReturn('no');
+
+ $isEnabled = $this->availabilityCoordinator->isEnabled();
+
+ self::assertTrue($isEnabled);
+ }
+
public function testGetOutOfOfficeData(): void {
$absence = new Absence();
$absence->setId(420);