From 392146d1684a04fe66d35f802c81c5ef48f8c47b Mon Sep 17 00:00:00 2001
From: Philipp Lang <philipp@aweos.de>
Date: Thu, 17 Feb 2022 16:42:56 +0100
Subject: [PATCH] Fixed initializeGroup

---
 tests/Unit/InitializeGroupsTest.php | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/tests/Unit/InitializeGroupsTest.php b/tests/Unit/InitializeGroupsTest.php
index 8fc4a48f..6a1e5068 100644
--- a/tests/Unit/InitializeGroupsTest.php
+++ b/tests/Unit/InitializeGroupsTest.php
@@ -75,7 +75,7 @@ class InitializeGroupsTest extends TestCase
             collect([(new Group())->setParentId(null)->setId(150)->setName('lorem')])
         );
         $this->api->method('subgroupsOf')->willReturn(
-                collect([(new Group())->setParentId(150)->setId(200)->setName('subgroup')])
+            collect([(new Group())->setParentId(150)->setId(200)->setName('subgroup')])
         );
 
         (new InitializeGroups($this->api))->handle();
@@ -86,4 +86,24 @@ class InitializeGroupsTest extends TestCase
         $this->assertEquals(150, $subgroup->parent->nami_id);
     }
 
+    public function testItAssignsIdAndParentToAnExistingSubgroup(): void
+    {
+        GroupModel::factory()->create(['nami_id' => 200]);
+        $this->api->method('groups')->willReturn(
+            collect([(new Group())->setParentId(null)->setId(150)->setName('root')])
+        );
+        $this->api->method('subgroupsOf')->willReturn(
+            collect([(new Group())->setParentId(150)->setId(200)->setName('child')])
+        );
+
+        (new InitializeGroups($this->api))->handle();
+
+        $this->assertDatabaseCount('groups', 2);
+        $this->assertDatabaseHas('groups', [
+            'nami_id' => 200,
+            'name' => 'child',
+            'parent_id' => GroupModel::firstWhere('nami_id', 150)->id,
+        ]);
+    }
+
 }