| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- <?php
- namespace App\Test\Service\Organization;
- use App\Entity\Organization\Organization;
- use App\Entity\Organization\Parameters;
- use App\Entity\Organization\Settings;
- use App\Enum\Organization\SettingsProductEnum;
- use App\Service\Organization\Utils;
- use App\Service\Organization\Utils as OrganizationUtils;
- use PHPUnit\Framework\TestCase;
- class UtilsTest extends TestCase
- {
- private OrganizationUtils $organizationUtils;
- private Organization $organization;
- private Organization $federation;
- public function setUp():void
- {
- $settings = new Settings();
- $settings->setProduct(SettingsProductEnum::ARTIST_PREMIUM());
- $this->organization = new Organization();
- $this->organization->setSettings($settings);
- $settings = new Settings();
- $settings->setProduct(SettingsProductEnum::MANAGER());
- $this->federation = new Organization();
- $this->federation->setSettings($settings);
- $this->organizationUtils = new OrganizationUtils();
- }
- /**
- * @see OrganizationUtils::isStructure()
- */
- public function testIsStructureTest(){
- $this->assertTrue($this->organizationUtils->isStructure($this->organization));
- }
- /**
- * @see OrganizationUtils::isStructure()
- */
- public function testIsNotStructureTest(){
- $this->assertFalse($this->organizationUtils->isStructure($this->federation));
- }
- /**
- * @see OrganizationUtils::isManager()
- */
- public function testIsManagerTest(){
- $this->assertTrue($this->organizationUtils->isManager($this->federation));
- }
- /**
- * @see OrganizationUtils::isManager()
- */
- public function testIsNotManagerTest(){
- $this->assertFalse($this->organizationUtils->isManager($this->organization));
- }
- /**
- * @see OrganizationUtils::isOrganizationIs2ios()
- */
- public function testIsOrganizationIs2ios(){
- $organizationMock = $this->getMockBuilder(Organization::class)->getMock();
- $organizationMock
- ->method('getId')
- ->willReturn(32366);
- $this->assertTrue($this->organizationUtils->isOrganizationIs2ios($organizationMock));
- }
- /**
- * @see OrganizationUtils::isOrganizationIs2ios()
- */
- public function testIsNotOrganizationIs2ios(){
- $organizationMock = $this->getMockBuilder(Organization::class)->getMock();
- $organizationMock
- ->method('getId')
- ->willReturn(1);
- $this->assertFalse($this->organizationUtils->isOrganizationIs2ios($organizationMock));
- }
- /**
- * @see OrganizationUtils::isOrganizationIsCMF()
- */
- public function testIsOrganizationIsCMF(){
- $organizationMock = $this->getMockBuilder(Organization::class)->getMock();
- $organizationMock
- ->method('getId')
- ->willReturn(12097);
- $this->assertTrue($this->organizationUtils->isOrganizationIsCMF($organizationMock));
- }
- /**
- * @see OrganizationUtils::getOrganizationCurrentActivityYear()
- */
- public function testGetOrganizationCurrentActivityYear(){
- $parameters = new Parameters();
- $parameters->setMusicalDate(new \DateTime('2020-09-01'));
- $this->organization->setParameters($parameters);
- $today = new \DateTime('now');
- if($today->format('m') < 9)
- $this->assertEquals( ($today->format('Y') - 1), $this->organizationUtils->getOrganizationCurrentActivityYear($this->organization));
- else
- $this->assertEquals($today->format('Y'), $this->organizationUtils->getOrganizationCurrentActivityYear($this->organization));
- }
- /**
- * @see OrganizationUtils::getActivityPeriodsSwitchYear()
- */
- public function testGetActivityPeriodsSwitchYear(){
- $parameters = new Parameters();
- $parameters->setMusicalDate(new \DateTime('2020-09-05'));
- $this->organization->setParameters($parameters);
- $organizationUtils = new \App\Service\Organization\Utils();
- $periods = $organizationUtils->getActivityPeriodsSwitchYear($this->organization, 2022);
- $this->assertEquals('2022-09-05', $periods['dateStart']);
- $this->assertEquals('2023-09-04', $periods['dateEnd']);
- }
- /**
- * @see OrganizationUtils::getActivityYearSwitchDate()
- */
- public function testgetActivityYearSwitchDate(){
- $parameters = new Parameters();
- $parameters->setMusicalDate(new \DateTime('2020-09-05'));
- $this->organization->setParameters($parameters);
- $this->assertEquals(2022, $this->organizationUtils->getActivityYearSwitchDate($this->organization, new \DateTime('2022-09-10')));
- $this->assertEquals(2021, $this->organizationUtils->getActivityYearSwitchDate($this->organization, new \DateTime('2022-09-02')));
- }
- }
|