-
-
diff --git a/tests/stub.phpstub b/tests/stub.phpstub
index 73673f72e5..908321c8a6 100644
--- a/tests/stub.phpstub
+++ b/tests/stub.phpstub
@@ -730,6 +730,10 @@ namespace OCA\NotifyPush\Queue {
}
}
+namespace OCA\Files\Event {
+ class LoadSidebar extends \OCP\EventDispatcher\Event {}
+}
+
namespace OCA\Text\Event {
class LoadEditor extends \OCP\EventDispatcher\Event {}
}
diff --git a/tests/unit/Listeners/LoadBoardWebComponentListenerTest.php b/tests/unit/Listeners/LoadBoardWebComponentListenerTest.php
new file mode 100644
index 0000000000..c57647e9db
--- /dev/null
+++ b/tests/unit/Listeners/LoadBoardWebComponentListenerTest.php
@@ -0,0 +1,55 @@
+createMock(IInitialState::class);
+ $dispatcher = $this->createMock(IEventDispatcher::class);
+ $state->expects($this->never())->method('provideInitialState');
+ $dispatcher->expects($this->never())->method('dispatchTyped');
+
+ (new LoadBoardWebComponentListener($state, $dispatcher))->handle(new Event());
+ }
+
+ public function testLoadsUploadStateAndIntegrations(): void {
+ $state = $this->createMock(IInitialState::class);
+ $dispatcher = $this->createMock(IEventDispatcher::class);
+ $state->expects($this->once())->method('provideInitialState')
+ ->with('maxUploadSize', $this->isType('int'));
+ $events = [];
+ $dispatcher->method('dispatchTyped')->willReturnCallback(
+ static function (Event $event) use (&$events): void {
+ $events[] = get_class($event);
+ }
+ );
+
+ (new LoadBoardWebComponentListener($state, $dispatcher))->handle(new LoadBoardWebComponentEvent());
+
+ $expected = [LoadSidebar::class, LoadAdditionalScriptsEvent::class];
+ if (class_exists(LoadEditor::class)) {
+ $expected[] = LoadEditor::class;
+ }
+ if (class_exists(LoadViewer::class)) {
+ $expected[] = LoadViewer::class;
+ }
+ $this->assertSame($expected, $events);
+ }
+}
diff --git a/webpack.js b/webpack.js
index 78b144c64c..231e7da0b9 100644
--- a/webpack.js
+++ b/webpack.js
@@ -12,6 +12,7 @@ webpackConfig.entry = {
calendar: path.join(__dirname, 'src', 'init-calendar.js'),
talk: path.join(__dirname, 'src', 'init-talk.js'),
reference: path.join(__dirname, 'src', 'init-reference.js'),
+ boardComponent: path.join(__dirname, 'src', 'init-board-component.js'),
}
if (isDevServer) {