|
|
@@ -20,8 +20,8 @@ use PHPUnit\Framework\TestCase;
|
|
|
|
|
|
class UtilsTest extends TestCase
|
|
|
{
|
|
|
- private MockObject | NetworkOrganizationRepository $networkOrganizationRepository;
|
|
|
- private MockObject | NetworkUtils $networkUtils;
|
|
|
+ private MockObject|NetworkOrganizationRepository $networkOrganizationRepository;
|
|
|
+ private MockObject|NetworkUtils $networkUtils;
|
|
|
|
|
|
public function setUp(): void
|
|
|
{
|
|
|
@@ -32,13 +32,25 @@ class UtilsTest extends TestCase
|
|
|
$this->networkUtils = $this->getMockBuilder(NetworkUtils::class)->disableOriginalConstructor()->getMock();
|
|
|
}
|
|
|
|
|
|
- public function getOrganizationUtilsMockFor(string $methodName) {
|
|
|
+ public function getOrganizationUtilsMockFor(string $methodName): MockObject|OrganizationUtils
|
|
|
+ {
|
|
|
return $this->getMockBuilder(OrganizationUtils::class)
|
|
|
->setConstructorArgs([$this->networkOrganizationRepository, $this->networkUtils])
|
|
|
->setMethodsExcept([$methodName])
|
|
|
->getMock();
|
|
|
}
|
|
|
|
|
|
+ private function createOrganizationWithProductMock(SettingsProductEnum $product): Organization
|
|
|
+ {
|
|
|
+ $settings = $this->getMockBuilder(Settings::class)->getMock();
|
|
|
+ $settings->method('getProduct')->willReturn($product);
|
|
|
+
|
|
|
+ $organization = $this->getMockBuilder(Organization::class)->getMock();
|
|
|
+ $organization->method('getSettings')->willReturn($settings);
|
|
|
+
|
|
|
+ return $organization;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* @see OrganizationUtils::isStructure()
|
|
|
*/
|
|
|
@@ -239,7 +251,8 @@ class UtilsTest extends TestCase
|
|
|
/**
|
|
|
* @see OrganizationUtils::getOrganizationActiveSubdomain()
|
|
|
*/
|
|
|
- public function testGetOrganizationActiveSubdomain(): void {
|
|
|
+ public function testGetOrganizationActiveSubdomain(): void
|
|
|
+ {
|
|
|
$organizationUtils = $this->getOrganizationUtilsMockFor('getOrganizationActiveSubdomain');
|
|
|
|
|
|
$subdomain1 = $this->getMockBuilder(Subdomain::class)->getMock();
|
|
|
@@ -261,7 +274,8 @@ class UtilsTest extends TestCase
|
|
|
/**
|
|
|
* @see OrganizationUtils::getOrganizationActiveSubdomain()
|
|
|
*/
|
|
|
- public function testGetOrganizationActiveSubdomainNone(): void {
|
|
|
+ public function testGetOrganizationActiveSubdomainNone(): void
|
|
|
+ {
|
|
|
$organizationUtils = $this->getOrganizationUtilsMockFor('getOrganizationActiveSubdomain');
|
|
|
|
|
|
$subdomain1 = $this->getMockBuilder(Subdomain::class)->getMock();
|
|
|
@@ -557,7 +571,7 @@ class UtilsTest extends TestCase
|
|
|
*/
|
|
|
public function testIsSchool(): void
|
|
|
{
|
|
|
- $organizationUtils = $this->getMockBuilder(TestableOrganizationUtils::class)->setMethodsExcept(['isSchool'])->getMock();
|
|
|
+ $organizationUtils = $this->getOrganizationUtilsMockFor('isSchool');
|
|
|
|
|
|
$organization = $this->createOrganizationWithProductMock(SettingsProductEnum::ARTIST);
|
|
|
$this->assertFalse($organizationUtils->isSchool($organization));
|
|
|
@@ -583,7 +597,7 @@ class UtilsTest extends TestCase
|
|
|
*/
|
|
|
public function testIsArtist(): void
|
|
|
{
|
|
|
- $organizationUtils = $this->getMockBuilder(TestableOrganizationUtils::class)->setMethodsExcept(['isArtist'])->getMock();
|
|
|
+ $organizationUtils = $this->getOrganizationUtilsMockFor('isArtist');
|
|
|
|
|
|
$organization = $this->createOrganizationWithProductMock(SettingsProductEnum::ARTIST);
|
|
|
$this->assertTrue($organizationUtils->isArtist($organization));
|
|
|
@@ -609,7 +623,7 @@ class UtilsTest extends TestCase
|
|
|
*/
|
|
|
public function testHasModule(): void
|
|
|
{
|
|
|
- $organizationUtils = $this->getMockBuilder(TestableOrganizationUtils::class)->setMethodsExcept(['hasModule'])->getMock();
|
|
|
+ $organizationUtils = $this->getOrganizationUtilsMockFor('hasModule');
|
|
|
|
|
|
$settings = $this->getMockBuilder(Settings::class)->getMock();
|
|
|
$settings->method('getModules')->willReturn(['foo', 'bar']);
|
|
|
@@ -620,15 +634,4 @@ class UtilsTest extends TestCase
|
|
|
$this->assertTrue($organizationUtils->hasModule($organization, 'foo'));
|
|
|
$this->assertFalse($organizationUtils->hasModule($organization, 'other'));
|
|
|
}
|
|
|
-
|
|
|
- private function createOrganizationWithProductMock(SettingsProductEnum $product): Organization
|
|
|
- {
|
|
|
- $settings = $this->getMockBuilder(Settings::class)->getMock();
|
|
|
- $settings->method('getProduct')->willReturn($product);
|
|
|
-
|
|
|
- $organization = $this->getMockBuilder(Organization::class)->getMock();
|
|
|
- $organization->method('getSettings')->willReturn($settings);
|
|
|
-
|
|
|
- return $organization;
|
|
|
- }
|
|
|
}
|