]> git.agnieray.net Git - galette.git/blobdiff - tests/Galette/Repository/tests/units/Groups.php
Migrate to phpunit; closes #1674
[galette.git] / tests / Galette / Repository / tests / units / Groups.php
index 9b78b628d6cc9751839c84dc1e51da2db3b25db7..50143da613f106842ffcb9c86631486a43140ae1 100644 (file)
@@ -63,7 +63,7 @@ class Groups extends GaletteTestCase
      *
      * @return void
      */
-    public function tearDown()
+    public function tearDown(): void
     {
         $this->deleteGroups();
     }
@@ -83,7 +83,7 @@ class Groups extends GaletteTestCase
             \Laminas\Db\Adapter\Adapter::QUERY_MODE_EXECUTE
         );
 
-        $groups = $this->groupsProvider();
+        $groups = self::groupsProvider();
         foreach ($groups as $group) {
             foreach ($group['children'] as $child) {
                 $delete = $zdb->delete(\Galette\Entity\Group::TABLE);
@@ -114,7 +114,7 @@ class Groups extends GaletteTestCase
      *
      * @return array[]
      */
-    protected function groupsProvider(): array
+    public static function groupsProvider(): array
     {
         return [
             [
@@ -163,7 +163,7 @@ class Groups extends GaletteTestCase
     {
         $group = new \Galette\Entity\Group();
         $group->setName($parent_name);
-        $this->boolean($group->store())->isTrue();
+        $this->assertTrue($group->store());
         $parent_id = $group->getId();
         $this->parents[] = $group->getId();
 
@@ -171,7 +171,7 @@ class Groups extends GaletteTestCase
             $group = new \Galette\Entity\Group();
             $group->setName($child);
             $group->setParentGroup($parent_id);
-            $this->boolean($group->store())->isTrue();
+            $this->assertTrue($group->store());
             $sub_id = $group->getId();
             $this->children[] = $group->getId();
 
@@ -179,7 +179,7 @@ class Groups extends GaletteTestCase
                 $group = new \Galette\Entity\Group();
                 $group->setName($subchild);
                 $group->setParentGroup($sub_id);
-                $this->boolean($group->store())->isTrue();
+                $this->assertTrue($group->store());
                 $this->subchildren[] = $group->getId();
             }
         }
@@ -192,17 +192,22 @@ class Groups extends GaletteTestCase
      */
     public function testGetSimpleList()
     {
+        $groups = self::groupsProvider();
+        foreach ($groups as $group) {
+            $this->testCreateGroups($group['parent_name'], $group['children']);
+        }
+
         $list = \Galette\Repository\Groups::getSimpleList();
-        $this->array($list)->hasSize(17);
+        $this->assertCount(17, $list);
 
         foreach ($list as $group_name) {
-            $this->string($group_name)->isNotEmpty();
+            $this->assertNotEmpty($group_name);
         }
 
         $list = \Galette\Repository\Groups::getSimpleList(true);
-        $this->array($list)->hasSize(17);
+        $this->assertCount(17, $list);
         foreach ($list as $group) {
-            $this->object($group)->isInstanceOf(\Galette\Entity\Group::class);
+            $this->assertInstanceOf(\Galette\Entity\Group::class, $group);
         }
     }
 
@@ -215,13 +220,18 @@ class Groups extends GaletteTestCase
     {
         $this->logSuperAdmin();
 
+        $groups = self::groupsProvider();
+        foreach ($groups as $group) {
+            $this->testCreateGroups($group['parent_name'], $group['children']);
+        }
+
         $groups = new \Galette\Repository\Groups($this->zdb, $this->login);
 
         $parents_list = $groups->getList(false);
-        $this->array($parents_list)->hasSize(3);
+        $this->assertCount(3, $parents_list);
 
         $parents_list = $groups->getList(true);
-        $this->array($parents_list)->hasSize(17);
+        $this->assertCount(17, $parents_list);
 
         $select = $this->zdb->select(\Galette\Entity\Group::TABLE);
         $select->where(['group_name' => 'Europe']);
@@ -229,18 +239,18 @@ class Groups extends GaletteTestCase
         $europe = $result->{\Galette\Entity\Group::PK};
 
         $children_list = $groups->getList(true, $europe);
-        $this->array($children_list)->hasSize(4);
+        $this->assertCount(4, $children_list);
 
         //set manager on one group, impersonate him, and check it gets only one group
         $this->getMemberOne();
         $group = new \Galette\Entity\Group((int)$europe);
-        $this->boolean($group->setManagers([$this->adh]))->isTrue();
+        $this->assertTrue($group->setManagers([$this->adh]));
 
         $this->login->impersonate($this->adh->id);
 
         $groups = new \Galette\Repository\Groups($this->zdb, $this->login);
         $parents_list = $groups->getList();
-        $this->array($parents_list)->hasSize(1);
+        $this->assertCount(1, $parents_list);
     }
 
     /**
@@ -250,11 +260,16 @@ class Groups extends GaletteTestCase
      */
     public function testUniqueness()
     {
+        $groups = self::groupsProvider();
+        foreach ($groups as $group) {
+            $this->testCreateGroups($group['parent_name'], $group['children']);
+        }
+
         $group = new \Galette\Entity\Group();
         $group->setLogin($this->login);
         $unique_name = 'One group to rule them all';
         $group->setName($unique_name);
-        $this->boolean($group->store())->isTrue();
+        $this->assertTrue($group->store());
         $group_id = $group->getId();
 
         $select = $this->zdb->select(\Galette\Entity\Group::TABLE);
@@ -268,14 +283,14 @@ class Groups extends GaletteTestCase
         $france = $result->{\Galette\Entity\Group::PK};
 
         //name already exists - not unique
-        $this->boolean(\Galette\Repository\Groups::isUnique($this->zdb, $unique_name))->isFalse();
+        $this->assertFalse(\Galette\Repository\Groups::isUnique($this->zdb, $unique_name));
         //name does not exist on another level - unique
-        $this->boolean(\Galette\Repository\Groups::isUnique($this->zdb, $unique_name, $europe))->isTrue();
+        $this->assertTrue(\Galette\Repository\Groups::isUnique($this->zdb, $unique_name, $europe));
         //name is the current one - unique
-        $this->boolean(\Galette\Repository\Groups::isUnique($this->zdb, $unique_name, null, $group_id))->isTrue();
+        $this->assertTrue(\Galette\Repository\Groups::isUnique($this->zdb, $unique_name, null, $group_id));
 
         //tests on another level
-        $this->boolean(\Galette\Repository\Groups::isUnique($this->zdb, 'Nord', $france))->isFalse();
-        $this->boolean(\Galette\Repository\Groups::isUnique($this->zdb, 'Creuse', $france))->isTrue();
+        $this->assertFalse(\Galette\Repository\Groups::isUnique($this->zdb, 'Nord', $france));
+        $this->assertTrue(\Galette\Repository\Groups::isUnique($this->zdb, 'Creuse', $france));
     }
 }