aboutsummaryrefslogtreecommitdiffstats
path: root/tests/lib/Diagnostics/EventLoggerTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/Diagnostics/EventLoggerTest.php')
-rw-r--r--tests/lib/Diagnostics/EventLoggerTest.php58
1 files changed, 58 insertions, 0 deletions
diff --git a/tests/lib/Diagnostics/EventLoggerTest.php b/tests/lib/Diagnostics/EventLoggerTest.php
new file mode 100644
index 00000000000..ea9e95f80b3
--- /dev/null
+++ b/tests/lib/Diagnostics/EventLoggerTest.php
@@ -0,0 +1,58 @@
+<?php
+
+/**
+ * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-FileCopyrightText: 2017 ownCloud, Inc.
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
+
+namespace Test\Diagnostics;
+
+use OC\Diagnostics\EventLogger;
+use OC\Log;
+use OC\SystemConfig;
+use Psr\Log\LoggerInterface;
+use Test\TestCase;
+
+class EventLoggerTest extends TestCase {
+ /** @var \OC\Diagnostics\EventLogger */
+ private $logger;
+
+ protected function setUp(): void {
+ parent::setUp();
+
+ $this->logger = new EventLogger(
+ $this->createMock(SystemConfig::class),
+ $this->createMock(LoggerInterface::class),
+ $this->createMock(Log::class)
+ );
+ }
+
+ public function testQueryLogger(): void {
+ // Module is not activated and this should not be logged
+ $this->logger->start('test1', 'testevent1');
+ $this->logger->end('test1');
+ $this->logger->log('test2', 'testevent2', microtime(true), microtime(true));
+ $events = $this->logger->getEvents();
+ $this->assertSame(0, sizeof($events));
+
+ // Activate module and log some query
+ $this->logger->activate();
+
+ // start one event
+ $this->logger->start('test3', 'testevent3');
+
+ // force log of another event
+ $this->logger->log('test4', 'testevent4', microtime(true), microtime(true));
+
+ // log started event
+ $this->logger->end('test3');
+
+ $events = $this->logger->getEvents();
+ $this->assertSame('test4', $events['test4']->getId());
+ $this->assertSame('testevent4', $events['test4']->getDescription());
+ $this->assertSame('test3', $events['test3']->getId());
+ $this->assertSame('testevent3', $events['test3']->getDescription());
+ $this->assertSame(2, sizeof($events));
+ }
+}