From b6d1e6cc61812e1199f0ce071eae348a12600569 Mon Sep 17 00:00:00 2001 From: Sanja Date: Tue, 13 Feb 2024 13:26:33 -0800 Subject: [PATCH 01/18] Update admin retrieval logic to use is_administrator --- ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php b/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php index e3a0152c14..0f3e8a1444 100644 --- a/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php +++ b/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php @@ -23,7 +23,7 @@ public function export() : void public function import() : bool { $authenticatedUser = Auth::user(); - $userId = $authenticatedUser ? $authenticatedUser->id : User::where('username', 'admin')->pluck('id'); + $userId = $authenticatedUser ? $authenticatedUser->id : User::where('is_administrator', true)->first()->id; switch ($this->mode) { case 'copy': case 'new': From 3284ae64e646eb59166f9c49c946155513465756 Mon Sep 17 00:00:00 2001 From: Sanja Date: Wed, 14 Feb 2024 15:09:46 -0800 Subject: [PATCH 02/18] Seed Admin User in test database --- tests/bootstrap.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/bootstrap.php b/tests/bootstrap.php index 586fd87c58..63e2906e85 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -96,6 +96,9 @@ Artisan::call('migrate:fresh', []); Artisan::call('db:seed', ['--class' => 'AnonymousUserSeeder']); + // Seed the super administrator user data + Artisan::call('db:seed', ['--class' => 'UserSeeder']); + \Illuminate\Foundation\Testing\RefreshDatabaseState::$migrated = true; ScriptExecutor::firstOrCreate( From 332da14b365b42b511a142b04cfba6aa616c063b Mon Sep 17 00:00:00 2001 From: Sanja Date: Wed, 14 Feb 2024 16:19:16 -0800 Subject: [PATCH 03/18] Create Admin User Seeder for PHPUnit Tests --- database/seeders/AdminUserSeeder.php | 57 ++++++++++++++++++++++++++++ tests/bootstrap.php | 2 +- 2 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 database/seeders/AdminUserSeeder.php diff --git a/database/seeders/AdminUserSeeder.php b/database/seeders/AdminUserSeeder.php new file mode 100644 index 0000000000..9868dc93b1 --- /dev/null +++ b/database/seeders/AdminUserSeeder.php @@ -0,0 +1,57 @@ + self::$INSTALLER_ADMIN_USERNAME, + 'is_administrator' => true, + ], [ + 'username' => self::$INSTALLER_ADMIN_USERNAME, + 'password' => Hash::make(env('INSTALL_ADMIN_PASSWORD', self::$INSTALLER_ADMIN_PASSWORD)), + 'email' => self::$INSTALLER_ADMIN_EMAIL, + 'firstname' => self::$INSTALLER_ADMIN_FIRSTNAME, + 'lastname' => self::$INSTALLER_ADMIN_LASTNAME, + 'address' => null, + 'city' => null, + 'state' => null, + 'postal' => null, + 'country' => null, + 'phone' => null, + 'fax' => null, + 'cell' => null, + 'title' => null, + 'birthdate' => null, + 'timezone' => 'America/Los_Angeles', + 'datetime_format' => 'm/d/Y H:i', + 'language' => 'en', + 'status' => 'ACTIVE', + ]); + } +} diff --git a/tests/bootstrap.php b/tests/bootstrap.php index 63e2906e85..e1cb98da8c 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -97,7 +97,7 @@ Artisan::call('db:seed', ['--class' => 'AnonymousUserSeeder']); // Seed the super administrator user data - Artisan::call('db:seed', ['--class' => 'UserSeeder']); + Artisan::call('db:seed', ['--class' => 'AdminUserSeeder']); \Illuminate\Foundation\Testing\RefreshDatabaseState::$migrated = true; From e6e2343ee28f556bf03fb75267886059e8ee991f Mon Sep 17 00:00:00 2001 From: Sanja Date: Wed, 14 Feb 2024 16:31:01 -0800 Subject: [PATCH 04/18] Remove unused 'user' variable --- database/seeders/AdminUserSeeder.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/database/seeders/AdminUserSeeder.php b/database/seeders/AdminUserSeeder.php index 9868dc93b1..82f92836dc 100644 --- a/database/seeders/AdminUserSeeder.php +++ b/database/seeders/AdminUserSeeder.php @@ -28,8 +28,8 @@ class AdminUserSeeder extends Seeder */ public function run(ClientRepository $clients) { - //Create admin user - $user = User::updateOrCreate([ + // Create admin user + User::updateOrCreate([ 'username' => self::$INSTALLER_ADMIN_USERNAME, 'is_administrator' => true, ], [ From b68f58c5c5f678fb36b6ee167d547aca76893ed4 Mon Sep 17 00:00:00 2001 From: Sanja Date: Wed, 14 Feb 2024 16:40:09 -0800 Subject: [PATCH 05/18] SonarQube fixes --- ...UserSeeder.php => AdminTestUserSeeder.php} | 24 +++++++++---------- tests/bootstrap.php | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) rename database/seeders/{AdminUserSeeder.php => AdminTestUserSeeder.php} (56%) diff --git a/database/seeders/AdminUserSeeder.php b/database/seeders/AdminTestUserSeeder.php similarity index 56% rename from database/seeders/AdminUserSeeder.php rename to database/seeders/AdminTestUserSeeder.php index 82f92836dc..db6cace1c8 100644 --- a/database/seeders/AdminUserSeeder.php +++ b/database/seeders/AdminTestUserSeeder.php @@ -9,17 +9,17 @@ use ProcessMaker\Models\GroupMember; use ProcessMaker\Models\User; -class AdminUserSeeder extends Seeder +class AdminTestUserSeeder extends Seeder { - public static $INSTALLER_ADMIN_USERNAME = 'admin_test'; + public static $INSTALLER_ADMIN_TEST_USERNAME = 'admin_test'; - public static $INSTALLER_ADMIN_PASSWORD = 'admin'; + public static $INSTALLER_ADMIN_TEST_PASSWORD = 'admin'; - public static $INSTALLER_ADMIN_EMAIL = 'admin_test@processmaker.com'; + public static $INSTALLER_ADMIN_TEST_EMAIL = 'admin_test@processmaker.com'; - public static $INSTALLER_ADMIN_FIRSTNAME = 'Admin'; + public static $INSTALLER_ADMIN_TEST_FIRSTNAME = 'Admin'; - public static $INSTALLER_ADMIN_LASTNAME = 'TestUser'; + public static $INSTALLER_ADMIN_TEST_LASTNAME = 'TestUser'; /** * Run the database seeds. @@ -30,14 +30,14 @@ public function run(ClientRepository $clients) { // Create admin user User::updateOrCreate([ - 'username' => self::$INSTALLER_ADMIN_USERNAME, + 'username' => self::$INSTALLER_ADMIN_TEST_USERNAME, 'is_administrator' => true, ], [ - 'username' => self::$INSTALLER_ADMIN_USERNAME, - 'password' => Hash::make(env('INSTALL_ADMIN_PASSWORD', self::$INSTALLER_ADMIN_PASSWORD)), - 'email' => self::$INSTALLER_ADMIN_EMAIL, - 'firstname' => self::$INSTALLER_ADMIN_FIRSTNAME, - 'lastname' => self::$INSTALLER_ADMIN_LASTNAME, + 'username' => self::$INSTALLER_ADMIN_TEST_USERNAME, + 'password' => Hash::make(self::$INSTALLER_ADMIN_TEST_PASSWORD), + 'email' => self::$INSTALLER_ADMIN_TEST_EMAIL, + 'firstname' => self::$INSTALLER_ADMIN_TEST_FIRSTNAME, + 'lastname' => self::$INSTALLER_ADMIN_TEST_LASTNAME, 'address' => null, 'city' => null, 'state' => null, diff --git a/tests/bootstrap.php b/tests/bootstrap.php index e1cb98da8c..52737d48fd 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -97,7 +97,7 @@ Artisan::call('db:seed', ['--class' => 'AnonymousUserSeeder']); // Seed the super administrator user data - Artisan::call('db:seed', ['--class' => 'AdminUserSeeder']); + Artisan::call('db:seed', ['--class' => 'AdminTestUserSeeder']); \Illuminate\Foundation\Testing\RefreshDatabaseState::$migrated = true; From da74dfe2d656f6d3ba467153c52639ec307b83ac Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 08:30:10 -0800 Subject: [PATCH 06/18] Remove creation and deletion of admin user in test --- tests/Feature/ImportExport/Exporters/ScriptExporterTest.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/Feature/ImportExport/Exporters/ScriptExporterTest.php b/tests/Feature/ImportExport/Exporters/ScriptExporterTest.php index d692a300fd..b2665f3fcd 100644 --- a/tests/Feature/ImportExport/Exporters/ScriptExporterTest.php +++ b/tests/Feature/ImportExport/Exporters/ScriptExporterTest.php @@ -114,9 +114,9 @@ public function testHiddenUsesParentMode() public function testNoMatchingRunAsUser() { - $admin_user = User::factory()->create(['is_administrator' => true]); DB::beginTransaction(); $user = User::factory()->create(['username' => 'test']); + $admin_user = User::where('is_administrator', true)->first(); $script = Script::factory()->create(['title' => 'test', 'run_as_user_id' => $user->id]); $payload = $this->export($script, ScriptExporter::class, null, false); @@ -126,7 +126,6 @@ public function testNoMatchingRunAsUser() $script = Script::where('title', 'test')->firstOrFail(); $this->assertEquals($script->run_as_user_id, $admin_user->id); - $admin_user->delete(); } public function testRunAsUserIdNull() From cffacad60b7baadd53ab8cae727d69c79dfe85df Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 11:26:25 -0800 Subject: [PATCH 07/18] Trigger PR --- resources/js/components/templates/WizardTemplateDetails.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/js/components/templates/WizardTemplateDetails.vue b/resources/js/components/templates/WizardTemplateDetails.vue index 39056c3327..f1228b0654 100644 --- a/resources/js/components/templates/WizardTemplateDetails.vue +++ b/resources/js/components/templates/WizardTemplateDetails.vue @@ -72,6 +72,7 @@ export default { helperProcessId: null, startEvents: null, shouldImportProcessTemplate: true, + }; }, computed: { From 2d0a9fb26ea8e6f33ab6b029452c291b59f59a0e Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 15:55:03 -0800 Subject: [PATCH 08/18] Testing CICD --- database/seeders/DatabaseSeeder.php | 1 + 1 file changed, 1 insertion(+) diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php index 12848e826e..e54ecf1813 100644 --- a/database/seeders/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -27,6 +27,7 @@ public function run() ScreenSystemSeeder::class, ScriptExecutorSeeder::class, SignalSeeder::class, + AdminTestUserSeeder::class, ]); $this->callPluginSeeders(); } From fe63ec5d6962cb59938d3529217c244994238bac Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 16:40:54 -0800 Subject: [PATCH 09/18] Seed the AdminTestUserSeeder when adding GlobalSignalProcesses --- database/seeders/DatabaseSeeder.php | 1 - tests/Feature/ImportExport/HelperTrait.php | 8 ++++++++ tests/bootstrap.php | 3 --- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php index e54ecf1813..12848e826e 100644 --- a/database/seeders/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -27,7 +27,6 @@ public function run() ScreenSystemSeeder::class, ScriptExecutorSeeder::class, SignalSeeder::class, - AdminTestUserSeeder::class, ]); $this->callPluginSeeders(); } diff --git a/tests/Feature/ImportExport/HelperTrait.php b/tests/Feature/ImportExport/HelperTrait.php index d9bec0c6e6..2bfbab6b75 100644 --- a/tests/Feature/ImportExport/HelperTrait.php +++ b/tests/Feature/ImportExport/HelperTrait.php @@ -2,6 +2,7 @@ namespace Tests\Feature\ImportExport; +use Database\Seeders\AdminTestUserSeeder; use Database\Seeders\SignalSeeder; use Illuminate\Http\UploadedFile; use ProcessMaker\ImportExport\Exporter; @@ -49,6 +50,8 @@ public function createScreen($screenPath, $attrs = [], $watchersPath = null) public function addGlobalSignalProcess() { + $this->addTestAdminUser(); + ProcessCategory::factory()->create(['is_system'=> true]); (new SignalSeeder())->run(); $this->globalSignal = new SignalData('test_global', 'test_global', ''); @@ -89,4 +92,9 @@ public function makeOptions($options = []) json_encode($options) ); } + + public function addTestAdminUser() + { + (new AdminTestUserSeeder())->run(); + } } diff --git a/tests/bootstrap.php b/tests/bootstrap.php index 52737d48fd..586fd87c58 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -96,9 +96,6 @@ Artisan::call('migrate:fresh', []); Artisan::call('db:seed', ['--class' => 'AnonymousUserSeeder']); - // Seed the super administrator user data - Artisan::call('db:seed', ['--class' => 'AdminTestUserSeeder']); - \Illuminate\Foundation\Testing\RefreshDatabaseState::$migrated = true; ScriptExecutor::firstOrCreate( From 2412cc4d7a73291c8d1741aa4de2f071287ff896 Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 16:49:45 -0800 Subject: [PATCH 10/18] Update base test case to create test admin user --- database/seeders/AdminTestUserSeeder.php | 57 ---------------------- tests/Feature/ImportExport/HelperTrait.php | 7 --- tests/TestCase.php | 19 ++++++++ 3 files changed, 19 insertions(+), 64 deletions(-) delete mode 100644 database/seeders/AdminTestUserSeeder.php diff --git a/database/seeders/AdminTestUserSeeder.php b/database/seeders/AdminTestUserSeeder.php deleted file mode 100644 index db6cace1c8..0000000000 --- a/database/seeders/AdminTestUserSeeder.php +++ /dev/null @@ -1,57 +0,0 @@ - self::$INSTALLER_ADMIN_TEST_USERNAME, - 'is_administrator' => true, - ], [ - 'username' => self::$INSTALLER_ADMIN_TEST_USERNAME, - 'password' => Hash::make(self::$INSTALLER_ADMIN_TEST_PASSWORD), - 'email' => self::$INSTALLER_ADMIN_TEST_EMAIL, - 'firstname' => self::$INSTALLER_ADMIN_TEST_FIRSTNAME, - 'lastname' => self::$INSTALLER_ADMIN_TEST_LASTNAME, - 'address' => null, - 'city' => null, - 'state' => null, - 'postal' => null, - 'country' => null, - 'phone' => null, - 'fax' => null, - 'cell' => null, - 'title' => null, - 'birthdate' => null, - 'timezone' => 'America/Los_Angeles', - 'datetime_format' => 'm/d/Y H:i', - 'language' => 'en', - 'status' => 'ACTIVE', - ]); - } -} diff --git a/tests/Feature/ImportExport/HelperTrait.php b/tests/Feature/ImportExport/HelperTrait.php index 2bfbab6b75..fda9cc94a0 100644 --- a/tests/Feature/ImportExport/HelperTrait.php +++ b/tests/Feature/ImportExport/HelperTrait.php @@ -50,8 +50,6 @@ public function createScreen($screenPath, $attrs = [], $watchersPath = null) public function addGlobalSignalProcess() { - $this->addTestAdminUser(); - ProcessCategory::factory()->create(['is_system'=> true]); (new SignalSeeder())->run(); $this->globalSignal = new SignalData('test_global', 'test_global', ''); @@ -92,9 +90,4 @@ public function makeOptions($options = []) json_encode($options) ); } - - public function addTestAdminUser() - { - (new AdminTestUserSeeder())->run(); - } } diff --git a/tests/TestCase.php b/tests/TestCase.php index b1e1cdef86..779f559ba6 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -36,6 +36,8 @@ protected function setUp(): void $this->disableSetContentMiddleware(); + $this->createAdministrator(); + foreach (get_class_methods($this) as $method) { $imethod = strtolower($method); if (strpos($imethod, 'setup') === 0 && $imethod !== 'setup') { @@ -44,6 +46,23 @@ protected function setUp(): void } } + /** + * Creates an admin user for each test if one does not already exist + * + * @return void + */ + protected function createAdministrator(): void + { + if (User::where('is_administrator', true)->exists()) { + return; + } + + User::factory()->create([ + 'password' => Hash::make('password'), + 'is_administrator' => true, + ]); + } + /** * Disable middleware that calls setContent() otherwise we can't use assertViewIs() */ From 242cee924af027798c79b22efcc5de720706e429 Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 17:27:24 -0800 Subject: [PATCH 11/18] Add missing User Model --- tests/TestCase.php | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/TestCase.php b/tests/TestCase.php index 779f559ba6..260660777e 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -14,6 +14,7 @@ use ProcessMaker\Models\ProcessRequestLock; use ProcessMaker\Models\SecurityLog; use ProcessMaker\Models\Setting; +use ProcessMaker\Models\User; abstract class TestCase extends BaseTestCase { From c37dda996c41405000b261057870c333fffadb9b Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 17:39:32 -0800 Subject: [PATCH 12/18] trigger PR --- resources/js/components/templates/WizardTemplateDetails.vue | 1 - 1 file changed, 1 deletion(-) diff --git a/resources/js/components/templates/WizardTemplateDetails.vue b/resources/js/components/templates/WizardTemplateDetails.vue index f1228b0654..39056c3327 100644 --- a/resources/js/components/templates/WizardTemplateDetails.vue +++ b/resources/js/components/templates/WizardTemplateDetails.vue @@ -72,7 +72,6 @@ export default { helperProcessId: null, startEvents: null, shouldImportProcessTemplate: true, - }; }, computed: { From 37c29a4c44b2848c9620d72b3434cb103d756292 Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 18:07:48 -0800 Subject: [PATCH 13/18] resolve missing Hash class --- tests/TestCase.php | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/TestCase.php b/tests/TestCase.php index 260660777e..5afaf02b6f 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -8,6 +8,7 @@ use Illuminate\Foundation\Testing\TestCase as BaseTestCase; use Illuminate\Support\Facades\Artisan; use Illuminate\Support\Facades\Bus; +use Illuminate\Support\Facades\Hash; use PDOException; use ProcessMaker\Jobs\RefreshArtisanCaches; use ProcessMaker\Models\ProcessRequest; From 0789b63578db2ac42b63b94416f5c66ff9810d64 Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 18:23:38 -0800 Subject: [PATCH 14/18] Configure personal access client --- tests/TestCase.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/TestCase.php b/tests/TestCase.php index 5afaf02b6f..26555df5ff 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -63,6 +63,8 @@ protected function createAdministrator(): void 'password' => Hash::make('password'), 'is_administrator' => true, ]); + + $this->withPersonalAccessClient(); } /** From 6fa981bcbff1e2244e12be02f51d487ee42ad290 Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 18:52:11 -0800 Subject: [PATCH 15/18] Remove test admin user --- tests/TestCase.php | 21 --------------------- 1 file changed, 21 deletions(-) diff --git a/tests/TestCase.php b/tests/TestCase.php index 26555df5ff..b7402ddb1b 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -38,8 +38,6 @@ protected function setUp(): void $this->disableSetContentMiddleware(); - $this->createAdministrator(); - foreach (get_class_methods($this) as $method) { $imethod = strtolower($method); if (strpos($imethod, 'setup') === 0 && $imethod !== 'setup') { @@ -48,25 +46,6 @@ protected function setUp(): void } } - /** - * Creates an admin user for each test if one does not already exist - * - * @return void - */ - protected function createAdministrator(): void - { - if (User::where('is_administrator', true)->exists()) { - return; - } - - User::factory()->create([ - 'password' => Hash::make('password'), - 'is_administrator' => true, - ]); - - $this->withPersonalAccessClient(); - } - /** * Disable middleware that calls setContent() otherwise we can't use assertViewIs() */ From c908d03dc1ed382d496a4add4637d0d6e2404953 Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 20:02:12 -0800 Subject: [PATCH 16/18] Create admin user for each test using the import/export helper trait --- .../ImportExport/Exporters/ProcessExporterTest.php | 9 +++++++++ .../ImportExport/Exporters/ScreenExporterTest.php | 9 +++++++++ .../ImportExport/Exporters/ScriptExporterTest.php | 9 +++++++++ tests/Feature/ImportExport/HelperTrait.php | 6 ++++++ 4 files changed, 33 insertions(+) diff --git a/tests/Feature/ImportExport/Exporters/ProcessExporterTest.php b/tests/Feature/ImportExport/Exporters/ProcessExporterTest.php index 13701a005a..789e0fe578 100644 --- a/tests/Feature/ImportExport/Exporters/ProcessExporterTest.php +++ b/tests/Feature/ImportExport/Exporters/ProcessExporterTest.php @@ -29,6 +29,15 @@ class ProcessExporterTest extends TestCase { use HelperTrait; + /** + * Init admin user + */ + protected function setUp(): void + { + parent::setUp(); + $this->createAdminUser(); + } + private function fixtures() { // Create simple screens. Extensive screen tests are in ScreenExporterTest.php diff --git a/tests/Feature/ImportExport/Exporters/ScreenExporterTest.php b/tests/Feature/ImportExport/Exporters/ScreenExporterTest.php index 026e572ea4..b1feb73891 100644 --- a/tests/Feature/ImportExport/Exporters/ScreenExporterTest.php +++ b/tests/Feature/ImportExport/Exporters/ScreenExporterTest.php @@ -17,6 +17,15 @@ class ScreenExporterTest extends TestCase { use HelperTrait; + /** + * Init admin user + */ + protected function setUp(): void + { + parent::setUp(); + $this->createAdminUser(); + } + private function fixtures() { $screen = $this->createScreen('screen_with_nested_screen', ['title' => 'screen'], 'watchers'); diff --git a/tests/Feature/ImportExport/Exporters/ScriptExporterTest.php b/tests/Feature/ImportExport/Exporters/ScriptExporterTest.php index b2665f3fcd..b0202cec80 100644 --- a/tests/Feature/ImportExport/Exporters/ScriptExporterTest.php +++ b/tests/Feature/ImportExport/Exporters/ScriptExporterTest.php @@ -17,6 +17,15 @@ class ScriptExporterTest extends TestCase { use HelperTrait; + /** + * Init admin user + */ + protected function setUp(): void + { + parent::setUp(); + $this->createAdminUser(); + } + public function test() { DB::beginTransaction(); diff --git a/tests/Feature/ImportExport/HelperTrait.php b/tests/Feature/ImportExport/HelperTrait.php index fda9cc94a0..5d0027e40c 100644 --- a/tests/Feature/ImportExport/HelperTrait.php +++ b/tests/Feature/ImportExport/HelperTrait.php @@ -13,6 +13,7 @@ use ProcessMaker\Models\ProcessCategory; use ProcessMaker\Models\Screen; use ProcessMaker\Models\SignalData; +use ProcessMaker\Models\User; trait HelperTrait { @@ -90,4 +91,9 @@ public function makeOptions($options = []) json_encode($options) ); } + + public function createAdminUser() + { + User::factory()->create(['is_administrator' => true]); + } } From 06821db53d24226673f3ea3775c5a607a9a4cd7a Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 20:52:33 -0800 Subject: [PATCH 17/18] Remove unused code --- tests/TestCase.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/TestCase.php b/tests/TestCase.php index b7402ddb1b..b1e1cdef86 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -8,14 +8,12 @@ use Illuminate\Foundation\Testing\TestCase as BaseTestCase; use Illuminate\Support\Facades\Artisan; use Illuminate\Support\Facades\Bus; -use Illuminate\Support\Facades\Hash; use PDOException; use ProcessMaker\Jobs\RefreshArtisanCaches; use ProcessMaker\Models\ProcessRequest; use ProcessMaker\Models\ProcessRequestLock; use ProcessMaker\Models\SecurityLog; use ProcessMaker\Models\Setting; -use ProcessMaker\Models\User; abstract class TestCase extends BaseTestCase { From dbe871aa67dc548c12320967921133083052e85a Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 15 Feb 2024 20:53:17 -0800 Subject: [PATCH 18/18] Remove AdminTestUserSeeder reference --- tests/Feature/ImportExport/HelperTrait.php | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/Feature/ImportExport/HelperTrait.php b/tests/Feature/ImportExport/HelperTrait.php index 5d0027e40c..2b985453e7 100644 --- a/tests/Feature/ImportExport/HelperTrait.php +++ b/tests/Feature/ImportExport/HelperTrait.php @@ -2,7 +2,6 @@ namespace Tests\Feature\ImportExport; -use Database\Seeders\AdminTestUserSeeder; use Database\Seeders\SignalSeeder; use Illuminate\Http\UploadedFile; use ProcessMaker\ImportExport\Exporter;