diff --git a/tests/phpunit/CRM/Core/InvokeTest.php b/tests/phpunit/CRM/Core/InvokeTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..a78add461de1218c8b8dc218fda3616505a427c3
--- /dev/null
+++ b/tests/phpunit/CRM/Core/InvokeTest.php
@@ -0,0 +1,33 @@
+<?php
+/*
+ +--------------------------------------------------------------------+
+ | Copyright CiviCRM LLC. All rights reserved.                        |
+ |                                                                    |
+ | This work is published under the GNU AGPLv3 license with some      |
+ | permitted exceptions and without any warranty. For full license    |
+ | and copyright information, see https://civicrm.org/licensing       |
+ +--------------------------------------------------------------------+
+ */
+
+/**
+ * @group headless
+ */
+class CRM_Core_InvokeTest extends CiviUnitTestCase {
+
+  /**
+   * Test that no php errors come up invoking dashboard url for non-admins
+   * Motivation: This currently fails on php 7.4 because of IDS and magicquotes.
+   */
+  public function testInvokeDashboardForNonAdmin(): void {
+    CRM_Core_Config::singleton()->userPermissionClass->permissions = ['access CiviCRM'];
+
+    $_SERVER['REQUEST_URI'] = 'civicrm/dashboard?reset=1';
+    $_GET['q'] = 'civicrm/dashboard';
+
+    $item = CRM_Core_Invoke::getItem(['civicrm/dashboard?reset=1']);
+    ob_start();
+    CRM_Core_Invoke::runItem($item);
+    ob_end_clean();
+  }
+
+}