Added test

This commit is contained in:
snipe
2026-06-10 11:19:16 +01:00
parent 10703263a8
commit 07e70cf7a9
+60
View File
@@ -149,6 +149,66 @@ class CompanyScopingTest extends TestCase
$this->assertCanSee($licenseSeatB);
}
#[DataProvider('models')]
public function test_company_user_cannot_see_null_company_items_in_strict_mode($model)
{
$company = Company::factory()->create();
$nullCompanyItem = $model::factory()->create(['company_id' => null]);
$companyItem = $model::factory()->for($company)->create();
$companyUser = $company->users()->save(User::factory()->make());
$this->settings->enableMultipleFullCompanySupport();
$this->actingAs($companyUser);
$this->assertCannotSee($nullCompanyItem);
$this->assertCanSee($companyItem);
}
#[DataProvider('models')]
public function test_company_user_can_see_null_company_items_in_floater_mode($model)
{
$company = Company::factory()->create();
$nullCompanyItem = $model::factory()->create(['company_id' => null]);
$companyItem = $model::factory()->for($company)->create();
$companyUser = $company->users()->save(User::factory()->make());
$this->settings->enableFloaterMode();
$this->actingAs($companyUser);
$this->assertCanSee($nullCompanyItem);
$this->assertCanSee($companyItem);
}
#[DataProvider('models')]
public function test_null_company_user_cannot_see_company_items_in_strict_mode($model)
{
$company = Company::factory()->create();
$nullCompanyItem = $model::factory()->create(['company_id' => null]);
$companyItem = $model::factory()->for($company)->create();
$nullCompanyUser = User::factory()->create(['company_id' => null]);
$this->settings->enableMultipleFullCompanySupport();
$this->actingAs($nullCompanyUser);
$this->assertCanSee($nullCompanyItem);
$this->assertCannotSee($companyItem);
}
#[DataProvider('models')]
public function test_null_company_user_can_see_all_items_in_floater_mode($model)
{
$company = Company::factory()->create();
$nullCompanyItem = $model::factory()->create(['company_id' => null]);
$companyItem = $model::factory()->for($company)->create();
$nullCompanyUser = User::factory()->create(['company_id' => null]);
$this->settings->enableFloaterMode();
$this->actingAs($nullCompanyUser);
$this->assertCanSee($nullCompanyItem);
$this->assertCanSee($companyItem);
}
private function assertCanSee(Model $model)
{
$this->assertTrue(