diff --git a/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/AdditionalSetup/App_Plugins/welcome-dashboard/umbraco-package.json b/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/AdditionalSetup/App_Plugins/welcome-dashboard/umbraco-package.json
new file mode 100644
index 0000000000..d8e628762c
--- /dev/null
+++ b/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/AdditionalSetup/App_Plugins/welcome-dashboard/umbraco-package.json
@@ -0,0 +1,25 @@
+{
+ "$schema": "../../umbraco-package-schema.json",
+ "name": "My.WelcomePackage",
+ "version": "0.1.0",
+ "extensions": [
+ {
+ "type": "dashboard",
+ "alias": "my.welcome.dashboard",
+ "name": "My Welcome Dashboard",
+ "element": "/App_Plugins/welcome-dashboard/welcome-dashboard.js",
+ "elementName": "my-welcome-dashboard",
+ "weight": 30,
+ "meta": {
+ "label": "Welcome Dashboard",
+ "pathname": "welcome-dashboard"
+ },
+ "conditions": [
+ {
+ "alias": "Umb.Condition.SectionAlias",
+ "match": "Umb.Section.Content"
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/AdditionalSetup/App_Plugins/welcome-dashboard/welcome-dashboard.js b/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/AdditionalSetup/App_Plugins/welcome-dashboard/welcome-dashboard.js
new file mode 100644
index 0000000000..8ddf0fbaa3
--- /dev/null
+++ b/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/AdditionalSetup/App_Plugins/welcome-dashboard/welcome-dashboard.js
@@ -0,0 +1,38 @@
+import { css as n, customElement as c, html as d } from "@umbraco-cms/backoffice/external/lit";
+import { UmbLitElement as p } from "@umbraco-cms/backoffice/lit-element";
+var i = Object.getOwnPropertyDescriptor, h = (r, s, l, a) => {
+ for (var e = a > 1 ? void 0 : a ? i(s, l) : s, o = r.length - 1, m; o >= 0; o--)
+ (m = r[o]) && (e = m(e) || e);
+ return e;
+};
+let t = class extends p {
+ render() {
+ return d`
+
Welcome Dashboard
+
+
+ This is the Backoffice. From here, you can modify the content,
+ media, and settings of your website.
+
+
© Sample Company 20XX
+
+ `;
+ }
+};
+t.styles = [
+ n`
+ :host {
+ display: block;
+ padding: 24px;
+ }
+ `
+];
+t = h([
+ c("my-welcome-dashboard")
+], t);
+const b = t;
+export {
+ t as MyWelcomeDashboardElement,
+ b as default
+};
+//# sourceMappingURL=welcome-dashboard.js.map
diff --git a/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/AdditionalSetup/App_Plugins/welcome-dashboard/welcome-dashboard.js.map b/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/AdditionalSetup/App_Plugins/welcome-dashboard/welcome-dashboard.js.map
new file mode 100644
index 0000000000..65539b9a65
--- /dev/null
+++ b/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/AdditionalSetup/App_Plugins/welcome-dashboard/welcome-dashboard.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"welcome-dashboard.js","sources":["../../welcome-dashboard/src/welcome-dashboard.element.ts"],"sourcesContent":["import { css, html, customElement } from '@umbraco-cms/backoffice/external/lit';\r\nimport { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';\r\n\r\n@customElement('my-welcome-dashboard')\r\nexport class MyWelcomeDashboardElement extends UmbLitElement {\r\n\r\n override render() {\r\n return html`\r\n Welcome Dashboard
\r\n \r\n
\r\n This is the Backoffice. From here, you can modify the content,\r\n media, and settings of your website.\r\n
\r\n
© Sample Company 20XX
\r\n
\r\n `;\r\n }\r\n\r\n static override readonly styles = [\r\n css`\r\n :host {\r\n display: block;\r\n padding: 24px;\r\n }\r\n `,\r\n ];\r\n}\r\n\r\nexport default MyWelcomeDashboardElement;\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n 'my-welcome-dashboard': MyWelcomeDashboardElement;\r\n }\r\n}"],"names":["MyWelcomeDashboardElement","UmbLitElement","html","css","__decorateClass","customElement","MyWelcomeDashboardElement$1"],"mappings":";;;;;;;AAIO,IAAMA,IAAN,cAAwCC,EAAc;AAAA,EAEhD,SAAS;AACd,WAAOC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUX;AAUJ;AAvBaF,EAegB,SAAS;AAAA,EAC9BG;AAAA;AAAA;AAAA;AAAA;AAAA;AAMJ;AAtBSH,IAANI,EAAA;AAAA,EADNC,EAAc,sBAAsB;AAAA,GACxBL,CAAA;AAyBb,MAAAM,IAAeN;"}
\ No newline at end of file
diff --git a/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/CustomDashboard.spec.ts b/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/CustomDashboard.spec.ts
new file mode 100644
index 0000000000..0303f6b9af
--- /dev/null
+++ b/tests/Umbraco.Tests.AcceptanceTest/tests/ExtensionRegistry/CustomDashboard.spec.ts
@@ -0,0 +1,22 @@
+import {ConstantHelper, test} from '@umbraco/playwright-testhelpers';
+
+// Dashboard
+const dashboardName = 'Welcome Dashboard';
+
+test('can see the custom dashboard in content section', async ({umbracoUi}) => {
+ // Act
+ await umbracoUi.goToBackOffice();
+ await umbracoUi.content.goToSection(ConstantHelper.sections.content);
+
+ // Assert
+ await umbracoUi.content.isDashboardTabWithNameVisible(dashboardName, true);
+});
+
+test('can not see the custom dashboard in media section', async ({umbracoUi}) => {
+ // Act
+ await umbracoUi.goToBackOffice();
+ await umbracoUi.content.goToSection(ConstantHelper.sections.media);
+
+ // Assert
+ await umbracoUi.content.isDashboardTabWithNameVisible(dashboardName, false);
+});
\ No newline at end of file