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': 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 d692a300fd..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(); @@ -114,9 +123,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 +135,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() diff --git a/tests/Feature/ImportExport/HelperTrait.php b/tests/Feature/ImportExport/HelperTrait.php index d9bec0c6e6..2b985453e7 100644 --- a/tests/Feature/ImportExport/HelperTrait.php +++ b/tests/Feature/ImportExport/HelperTrait.php @@ -12,6 +12,7 @@ use ProcessMaker\Models\ProcessCategory; use ProcessMaker\Models\Screen; use ProcessMaker\Models\SignalData; +use ProcessMaker\Models\User; trait HelperTrait { @@ -89,4 +90,9 @@ public function makeOptions($options = []) json_encode($options) ); } + + public function createAdminUser() + { + User::factory()->create(['is_administrator' => true]); + } }