diff --git a/.env.testing-performance b/.env.testing-performance index ecc1b1042d33..47c5f7929d00 100644 --- a/.env.testing-performance +++ b/.env.testing-performance @@ -73,7 +73,6 @@ MAIL_TLS_VERIFY_PEER=true # -------------------------------------------- IMAGE_LIB=gd - # -------------------------------------------- # OPTIONAL: BACKUP SETTINGS # -------------------------------------------- diff --git a/PredefinedFilter::truncate(); b/PredefinedFilter::truncate(); new file mode 100644 index 000000000000..75715572e8f3 --- /dev/null +++ b/PredefinedFilter::truncate(); @@ -0,0 +1,67 @@ += [ + [ + "id" => 1, + "name" => "Asset Tag UI Copy", + ], + [ + "id" => 2, + "name" => "Test Name Filter", + ], + [ + "id" => 3, + "name" => "Asset TAG Like 123", + ], + [ + "id" => 4, + "name" => "Model filter", + ], + [ + "id" => 5, + "name" => "Serial filter", + ], + [ + "id" => 6, + "name" => "Status filter", + ], + [ + "id" => 7, + "name" => "Supplier filter", + ], + [ + "id" => 8, + "name" => "Company filter", + ], + [ + "id" => 9, + "name" => "RTD-Location filter", + ], + [ + "id" => 10, + "name" => "Custom Field Ram", + ], + [ + "id" => 11, + "name" => "Purchased Between", + ], + [ + "id" => 12, + "name" => "Combo contains: Model AND CustomField_RAM", + ], + [ + "id" => 13, + "name" => "Combo contains: Model AND Manufacturer", + ], + [ + "id" => 14, + "name" => "Combo contains: Model NOT Manufacturer", + ], + [ + "id" => 15, + "name" => "Assigned To Location contains name", + ], + [ + "id" => 16, + "name" => "ShouldNotBeVisibleForUserFilter", + ], + ] + diff --git a/database/seeders/CustomFieldProfilesSeeder.php b/database/seeders/CustomFieldProfilesSeeder.php new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php index 630a875733b4..11aae1b3dc51 100644 --- a/database/seeders/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -21,9 +21,7 @@ public function run() { Model::unguard(); - // Only create default settings if they do not exist in the db. if (! Setting::first()) { - // factory(Setting::class)->create(); $this->call(SettingsSeeder::class); } @@ -39,7 +37,15 @@ public function run() $this->call(DepreciationSeeder::class); $this->call(StatuslabelSeeder::class); $this->call(AccessorySeeder::class); - $this->call(CustomFieldSeeder::class); + + $dataset = env('TEST_DATASET', 'default'); + + if ($dataset === 'huge+custom') { + $this->call(CustomFieldsStandaloneSeeder::class); + } else { + $this->call(CustomFieldSeeder::class); + } + $this->call(AssetSeeder::class); $this->call(LicenseSeeder::class); $this->call(ComponentSeeder::class); @@ -47,8 +53,6 @@ public function run() $this->call(ActionlogSeeder::class); $this->call(PredefinedFilterSeeder::class); $this->call(PredefinedFilterPermissionSeeder::class); - $this->call(CustomFieldsStandaloneSeeder::class); - Artisan::call('snipeit:sync-asset-locations', ['--output' => 'all']); $output = Artisan::output(); @@ -60,4 +64,4 @@ public function run() DB::table('maintenances')->truncate(); DB::table('requested_assets')->truncate(); } -} +} \ No newline at end of file diff --git a/database/seeders/PredefinedFilterSeeder.php b/database/seeders/PredefinedFilterSeeder.php index 51c52427e905..55169872301e 100644 --- a/database/seeders/PredefinedFilterSeeder.php +++ b/database/seeders/PredefinedFilterSeeder.php @@ -15,18 +15,18 @@ public function run(): void { DB::transaction(function () { if (method_exists(PredefinedFilter::class, 'groups')) { - PredefinedFilter::all()->each(fn($pf) => $pf->groups()->detach()); + PredefinedFilter::all()->each(fn ($pf) => $pf->groups()->detach()); } PredefinedFilter::query()->delete(); $owner = User::firstOrCreate( ['email'=> 'predefined@filter.com'], [ - 'activated' => 1, - 'first_name' => 'Filter', - 'last_name'=> 'Predefined', - 'username' => 'filter', - 'password'=> Hash::make('1234567890'), + 'activated' => 1, + 'first_name' => 'Filter', + 'last_name' => 'Predefined', + 'username' => 'filter', + 'password' => Hash::make('1234567890'), 'permissions' => '{"superuser":"1"}', ] ); @@ -34,11 +34,11 @@ public function run(): void $hidden = User::firstOrCreate( ['email'=> 'hidden_predefined@filter.com'], [ - 'activated' => 0, + 'activated' => 0, 'first_name' => 'Hidden', - 'last_name'=> 'Owner', - 'username' => 'hidden_owner', - 'password'=> Hash::make('1234567890'), + 'last_name' => 'Owner', + 'username' => 'hidden_owner', + 'password' => Hash::make('1234567890'), ] ); @@ -51,186 +51,209 @@ public function run(): void $filters = [ [ 'name' => 'Asset Tag UI Copy', - 'filter_data' => json_decode('[{"field":"asset_tag","value":"123","operator":"contains","logic":"AND"}]', true), + 'filter_data' => [ + [ + 'field' => 'asset_tag', + 'value' => '123', + 'operator' => 'contains', + 'logic' => 'AND', + ], + ], ], [ - 'name' => 'Test Name Filter', - 'filter_data' => [ + 'name' => 'Test Name Filter', + 'filter_data' => [ [ - 'field' => 'name', - 'value' => 'Test', - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'name', + 'value' => 'Test', + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Asset TAG Like 123', - 'filter_data' => [ + 'name' => 'Asset TAG Like 123', + 'filter_data' => [ [ - 'field' => 'asset_tag', - 'value' => '123', - 'operator' => 'contains', - 'logic' => 'AND' + 'field' => 'asset_tag', + 'value' => '123', + 'operator' => 'contains', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Model filter', - 'filter_data' => [ + 'name' => 'Model filter', + 'filter_data' => [ [ - 'field' => 'model', - 'value' => [$model->id], - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'model', + 'value' => [$model->id], + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Serial filter', - 'filter_data' => [ + 'name' => 'Serial filter', + 'filter_data' => [ [ - 'field' => 'serial', - 'value' => 'FooBar', - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'serial', + 'value' => 'FooBar', + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Status filter', - 'filter_data' => [ + 'name' => 'Status filter', + 'filter_data' => [ [ - 'field' => 'status', - 'value' => [$status->id], - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'status', + 'value' => [$status->id], + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Supplier filter', - 'filter_data' => [ + 'name' => 'Supplier filter', + 'filter_data' => [ [ - 'field' => 'supplier', - 'value' => [$supplier->id], - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'supplier', + 'value' => [$supplier->id], + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Company filter', - 'filter_data' => [ + 'name' => 'Company filter', + 'filter_data' => [ [ - 'field' => 'company', - 'value' => [$company->id], - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'company', + 'value' => [$company->id], + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'RTD-Location filter', - 'filter_data' => [ + 'name' => 'RTD-Location filter', + 'filter_data' => [ [ - 'field' => 'rtd_location', - 'value' => [$location->id], - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'rtd_location', + 'value' => [$location->id], + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Custom Field Ram', - 'filter_data' => [ + 'name' => 'Custom Field Ram', + 'filter_data' => [ [ - 'field' => '_snipeit_ram_3', - 'value' => '32', - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => '_snipeit_ram_3', + 'value' => '32', + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Purchased Between', - 'filter_data' => [ + 'name' => 'Purchased Between', + 'filter_data' => [ [ - 'field' => 'purchase_date_start', - 'value' => '2024-10-15', - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'purchase_date_start', + 'value' => '2024-10-15', + 'operator' => 'equals', + 'logic' => 'AND', ], [ - 'field' => 'purchase_date_end', - 'value' => '2024-10-30', - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'purchase_date_end', + 'value' => '2024-10-30', + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Combo contains: Model AND CustomField_RAM', - 'filter_data' => [ + 'name' => 'Combo contains: Model AND CustomField_RAM', + 'filter_data' => [ [ - 'field' => 'model', - 'value' => ['book'], - 'operator' => 'contains', - 'logic' => 'AND' + 'field' => 'model', + 'value' => ['book'], + 'operator' => 'contains', + 'logic' => 'AND', ], [ - 'field' => '_snipeit_ram_3', - 'value' => '32', - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => '_snipeit_ram_3', + 'value' => '32', + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], [ - 'name' => 'Combo contains: Model AND Manufacturer', - 'filter_data' => [ + 'name' => 'Combo contains: Model AND Manufacturer', + 'filter_data' => [ [ - 'field' => 'model', - 'value' => ['book'], - 'operator' => 'contains', - 'logic' => 'AND' + 'field' => 'model', + 'value' => ['book'], + 'operator' => 'contains', + 'logic' => 'AND', ], [ - 'field' => 'manufacturer', - 'value' => [1], - 'operator' => 'equals', - 'logic' => 'AND' + 'field' => 'manufacturer', + 'value' => [1], + 'operator' => 'equals', + 'logic' => 'AND', ], ], ], - [ - 'name' => 'Combo contains: Model NOT Manufacturer', - 'filter_data' => [ + [ + 'name' => 'Combo contains: Model NOT Manufacturer', + 'filter_data' => [ [ - 'field' => 'model', - 'value' => ['book'], - 'operator' => 'contains', - 'logic' => 'AND' + 'field' => 'model', + 'value' => ['book'], + 'operator' => 'contains', + 'logic' => 'AND', ], [ - 'field' => 'manufacturer', - 'value' => ['apple'], - 'operator' => 'contains', - 'logic' => 'NOT' + 'field' => 'manufacturer', + 'value' => ['apple'], + 'operator' => 'contains', + 'logic' => 'NOT', ], ], ], + [ - 'name' => 'ShouldNotBeVisibleForUserFilter', - 'created_by' => $hidden->id, - 'filter_data' => [ + 'name' => 'Assigned To Location contains name', + 'filter_data' => [ [ - 'field' => 'company', - 'value' => [$company->id], - 'operator' => 'equals', - 'logic' => 'AND' - ] - ] + 'field' => 'assigned_to', + 'value' => [ + 'type' => Location::class, + 'value' => $location->name, + ], + 'operator' => 'contains', + 'logic' => 'AND', + ], + ], + ], + + [ + 'name' => 'ShouldNotBeVisibleForUserFilter', + 'created_by' => $hidden->id, + 'filter_data' => [ + [ + 'field' => 'company', + 'value' => [$company->id], + 'operator' => 'equals', + 'logic' => 'AND', + ], + ], ], ]; @@ -243,4 +266,4 @@ public function run(): void } }); } -} \ No newline at end of file +} diff --git a/database/seeders/SettingsSeeder.php b/database/seeders/SettingsSeeder.php index cc7f1b4d27df..d7f31e67f768 100644 --- a/database/seeders/SettingsSeeder.php +++ b/database/seeders/SettingsSeeder.php @@ -41,7 +41,7 @@ public function run() if ($user = User::where('username', '=', 'admin')->first()) { $user->locale = 'en-US'; - $user->enable_sound = 1; + $user->enable_sounds = 1; $user->enable_confetti = 1; $user->save(); } diff --git a/tests/Feature/AssetQuery/DateQueryTest.php b/tests/Feature/AssetQuery/DateQueryTest.php index 5be4f3a3eb0c..eecb9e80d6d4 100644 --- a/tests/Feature/AssetQuery/DateQueryTest.php +++ b/tests/Feature/AssetQuery/DateQueryTest.php @@ -145,5 +145,4 @@ public function testEolDateQueryEnd() $this->assertFalse($results->contains($assetB)); $this->assertFalse($results->contains($assetC)); } -} - +} \ No newline at end of file