mirror of
https://gitlab.dit.htwk-leipzig.de/htwk-software/htwkalender-pwa.git
synced 2025-07-16 09:38:51 +02:00
fix:#53 added empty events check
This commit is contained in:
@ -55,29 +55,33 @@ func ClearFeeds(db *daos.Dao, months int, clock localTime.Clock) {
|
||||
|
||||
func CombineEventsInFeed(events model.Events) model.Events {
|
||||
// Combine events with the same name, start, end and course
|
||||
combinedEvents := model.Events{events[0]}
|
||||
// check if there are events
|
||||
if len(events) > 0 {
|
||||
combinedEvents := model.Events{events[0]}
|
||||
|
||||
for i := 1; i < len(events); i++ {
|
||||
// check if the event is already in the combinedEvents
|
||||
alreadyInCombinedEvents := false
|
||||
for i := 1; i < len(events); i++ {
|
||||
// check if the event is already in the combinedEvents
|
||||
alreadyInCombinedEvents := false
|
||||
|
||||
for j := 0; j < len(combinedEvents); j++ {
|
||||
if events[i].Name == combinedEvents[j].Name &&
|
||||
events[i].Start == combinedEvents[j].Start &&
|
||||
events[i].End == combinedEvents[j].End &&
|
||||
events[i].Course == combinedEvents[j].Course {
|
||||
alreadyInCombinedEvents = true
|
||||
combinedEvents[j].Notes = addNotesIfAlreadyRoomsAdded(events, combinedEvents, j, i)
|
||||
combinedEvents[j].Prof = combineProfs(events, i, combinedEvents, j)
|
||||
combinedEvents[j].Rooms = combineRooms(events, i, combinedEvents, j)
|
||||
break
|
||||
for j := 0; j < len(combinedEvents); j++ {
|
||||
if events[i].Name == combinedEvents[j].Name &&
|
||||
events[i].Start == combinedEvents[j].Start &&
|
||||
events[i].End == combinedEvents[j].End &&
|
||||
events[i].Course == combinedEvents[j].Course {
|
||||
alreadyInCombinedEvents = true
|
||||
combinedEvents[j].Notes = addNotesIfAlreadyRoomsAdded(events, combinedEvents, j, i)
|
||||
combinedEvents[j].Prof = combineProfs(events, i, combinedEvents, j)
|
||||
combinedEvents[j].Rooms = combineRooms(events, i, combinedEvents, j)
|
||||
break
|
||||
}
|
||||
}
|
||||
if !alreadyInCombinedEvents {
|
||||
combinedEvents = append(combinedEvents, events[i])
|
||||
}
|
||||
}
|
||||
if !alreadyInCombinedEvents {
|
||||
combinedEvents = append(combinedEvents, events[i])
|
||||
}
|
||||
return combinedEvents
|
||||
}
|
||||
return combinedEvents
|
||||
return model.Events{}
|
||||
}
|
||||
|
||||
func addNotesIfAlreadyRoomsAdded(events model.Events, combinedEvents model.Events, index2 int, index1 int) string {
|
||||
|
@ -182,6 +182,13 @@ func TestCombineEventsInFeed(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "NoEventsInFeed",
|
||||
args: args{
|
||||
events: model.Events{},
|
||||
},
|
||||
want: model.Events{},
|
||||
},
|
||||
}
|
||||
for _, tt := range testCases {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
|
Reference in New Issue
Block a user