1

Merge remote-tracking branch 'origin/Services' into Services

# Conflicts:
#	src/main/java/mops/gruppen2/entities/Gruppe.java
#	src/main/java/mops/gruppen2/services/GruppenService.java
This commit is contained in:
Christoph
2020-03-06 16:03:21 +01:00
4 changed files with 65 additions and 2 deletions

View File

@ -3,6 +3,11 @@ package mops.gruppen2.entities;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import mops.gruppen2.events.*; import mops.gruppen2.events.*;
import mops.gruppen2.events.AddUser;
import mops.gruppen2.events.CreateGroupEvent;
import mops.gruppen2.events.UpdateGroupDescriptionEvent;
import mops.gruppen2.events.UpdateGroupTitleEvent;
import mops.gruppen2.events.DeleteUserEvent;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
@ -52,4 +57,13 @@ public class Gruppe extends Aggregat {
public void applyEvent(UpdateGroupDescriptionEvent event) { public void applyEvent(UpdateGroupDescriptionEvent event) {
this.beschreibung = event.getBeschreibung(); this.beschreibung = event.getBeschreibung();
} }
public void applyEvent(DeleteUserEvent event) {
for (Teilnehmer teilnehmer: teilnehmersList) {
if (teilnehmer.getId().equals(event.getUser_id())) {
this.teilnehmersList.remove(teilnehmer);
break;
}
}
}
} }

View File

@ -0,0 +1,11 @@
package mops.gruppen2.events;
import lombok.Getter;
@Getter
public class DeleteUserEvent extends Event{
public DeleteUserEvent(long id, long gruppe_id, long user_id) {
super(id, gruppe_id, user_id);
}
}

View File

@ -1,9 +1,8 @@
package mops.gruppen2.services; package mops.gruppen2.services;
import mops.gruppen2.entities.Gruppe;
import mops.gruppen2.events.Event; import mops.gruppen2.events.Event;
import mops.gruppen2.entities.Gruppe;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
@Service @Service

View File

@ -1,12 +1,51 @@
package mops.gruppen2.entities; package mops.gruppen2.entities;
import mops.gruppen2.events.AddUser;
import mops.gruppen2.events.CreateGroupEvent;
import mops.gruppen2.events.Event;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import java.util.ArrayList;
import java.util.List;
import static org.junit.jupiter.api.Assertions.*; import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.Mockito.mock;
class GruppeTest { class GruppeTest {
AddUser addUser;
CreateGroupEvent createGroupEvent;
@BeforeEach
public void setUp(){
}
@Test @Test
void applyEvent() { void applyEvent() {
} }
@Test
void applyAddUserEvent(){
Gruppe gruppe = new Gruppe();
Gruppe testGruppe = new Gruppe();
Teilnehmer teilnehmer = new Teilnehmer();
addUser = new AddUser(1L,1L,1L,"jens","bendi", "hi@gmail.com");
createGroupEvent = new CreateGroupEvent(1L,1L,1L, "hi", "foo");
gruppe.applyEvent(createGroupEvent);
gruppe.applyEvent(addUser);
testGruppe.applyEvent(createGroupEvent);
teilnehmer.setId(1L);
teilnehmer.setVorname("jens");
teilnehmer.setNachname("bendi");
teilnehmer.setEmail("hi@gmail.com");
List<Teilnehmer> testTeil= new ArrayList<>();
testTeil.add(teilnehmer);
testGruppe.setTeilnehmersList(testTeil);
assertEquals(testGruppe,gruppe);
}
} }