diff --git a/services/ical/model/eventModel_test.go b/services/ical/model/eventModel_test.go index c153f23..6813cbd 100644 --- a/services/ical/model/eventModel_test.go +++ b/services/ical/model/eventModel_test.go @@ -17,15 +17,15 @@ package model import ( + "github.com/pocketbase/pocketbase/models" "reflect" "testing" - - "github.com/pocketbase/pocketbase/models" - "github.com/pocketbase/pocketbase/tools/types" + "time" ) func TestEvents_Contains(t *testing.T) { - specificTime, _ := types.ParseDateTime("2020-01-01 12:00:00.000Z") + specificTime, _ := time.Parse("2020-01-01 12:00:00.000Z", "2020-01-01 12:00:00.000Z") + specificJSONTime := JSONTime(specificTime) type args struct { event Event @@ -44,20 +44,20 @@ func TestEvents_Contains(t *testing.T) { }, { name: "one event", - m: Events{{Day: "test", Week: "test", Start: specificTime, End: specificTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}}, - args: args{event: Event{Day: "test", Week: "test", Start: specificTime, End: specificTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}}, + m: Events{{Day: "test", Week: "test", Start: specificJSONTime, End: specificJSONTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}}, + args: args{event: Event{Day: "test", Week: "test", Start: specificJSONTime, End: specificJSONTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}}, want: true, }, { name: "two events", - m: Events{{Day: "test", Week: "test", Start: specificTime, End: specificTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}, {Day: "test2", Week: "test2", Start: specificTime, End: specificTime, Name: "test2", Course: "test2", Prof: "test2", Rooms: "test2", EventType: "test2"}}, - args: args{event: Event{Day: "test2", Week: "test2", Start: specificTime, End: specificTime, Name: "test2", Course: "test2", Prof: "test2", Rooms: "test2", EventType: "test2"}}, + m: Events{{Day: "test", Week: "test", Start: specificJSONTime, End: specificJSONTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}, {Day: "test2", Week: "test2", Start: specificJSONTime, End: specificJSONTime, Name: "test2", Course: "test2", Prof: "test2", Rooms: "test2", EventType: "test2"}}, + args: args{event: Event{Day: "test2", Week: "test2", Start: specificJSONTime, End: specificJSONTime, Name: "test2", Course: "test2", Prof: "test2", Rooms: "test2", EventType: "test2"}}, want: true, }, { name: "two events with different values", - m: Events{{Day: "test", Week: "test", Start: specificTime, End: specificTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test", UUID: "439ßu56rf8u9ijn4f4-2345345"}, {Day: "test2", Week: "test2", Start: specificTime, End: specificTime, Name: "test2", Course: "test2", Prof: "test2", Rooms: "test2", EventType: "test2", UUID: "432a39ßu545349ijn4f4-23dsa45"}}, - args: args{event: Event{Day: "test3", Week: "test3", Start: specificTime, End: specificTime, Name: "test3", Course: "test3", Prof: "test3", Rooms: "test3", EventType: "test3", UUID: "934mf43r34f-g68h7655tg3"}}, + m: Events{{Day: "test", Week: "test", Start: specificJSONTime, End: specificJSONTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test", UUID: "439ßu56rf8u9ijn4f4-2345345"}, {Day: "test2", Week: "test2", Start: specificJSONTime, End: specificJSONTime, Name: "test2", Course: "test2", Prof: "test2", Rooms: "test2", EventType: "test2", UUID: "432a39ßu545349ijn4f4-23dsa45"}}, + args: args{event: Event{Day: "test3", Week: "test3", Start: specificJSONTime, End: specificJSONTime, Name: "test3", Course: "test3", Prof: "test3", Rooms: "test3", EventType: "test3", UUID: "934mf43r34f-g68h7655tg3"}}, want: false, }, } @@ -71,14 +71,16 @@ func TestEvents_Contains(t *testing.T) { } func TestEvent_Equals(t *testing.T) { - specificTime, _ := types.ParseDateTime("2020-01-01 12:00:00.000Z") + + specificTime, _ := time.Parse("2020-01-01 12:00:00.000Z", "2020-01-01 12:00:00.000Z") + specificJSONTime := JSONTime(specificTime) type fields struct { UUID string Day string Week string - Start types.DateTime - End types.DateTime + Start JSONTime + End JSONTime Name string EventType string Prof string @@ -106,20 +108,20 @@ func TestEvent_Equals(t *testing.T) { }, { name: "one empty one not", - fields: fields{Day: "test", Week: "test", Start: specificTime, End: specificTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}, + fields: fields{Day: "test", Week: "test", Start: specificJSONTime, End: specificJSONTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}, args: args{event: Event{}}, want: false, }, { name: "one event", - fields: fields{Day: "test", Week: "test", Start: specificTime, End: specificTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}, - args: args{event: Event{Day: "test", Week: "test", Start: specificTime, End: specificTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}}, + fields: fields{Day: "test", Week: "test", Start: specificJSONTime, End: specificJSONTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}, + args: args{event: Event{Day: "test", Week: "test", Start: specificJSONTime, End: specificJSONTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}}, want: true, }, { name: "two events", - fields: fields{Day: "test", Week: "test", Start: specificTime, End: specificTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}, - args: args{event: Event{Day: "test2", Week: "test2", Start: specificTime, End: specificTime, Name: "test2", Course: "test2", Prof: "test2", Rooms: "test2", EventType: "test2"}}, + fields: fields{Day: "test", Week: "test", Start: specificJSONTime, End: specificJSONTime, Name: "test", Course: "test", Prof: "test", Rooms: "test", EventType: "test"}, + args: args{event: Event{Day: "test2", Week: "test2", Start: specificJSONTime, End: specificJSONTime, Name: "test2", Course: "test2", Prof: "test2", Rooms: "test2", EventType: "test2"}}, want: false, }, } @@ -153,8 +155,8 @@ func TestEvent_AnonymizeEvent(t *testing.T) { UUID string Day string Week string - Start types.DateTime - End types.DateTime + Start JSONTime + End JSONTime Name string EventType string Compulsory string @@ -174,22 +176,22 @@ func TestEvent_AnonymizeEvent(t *testing.T) { { name: "empty event", fields: fields{}, - want: AnonymizedEventDTO{Day: "", Week: "", Start: types.DateTime{}, End: types.DateTime{}, Rooms: "", Free: false}, + want: AnonymizedEventDTO{Day: "", Week: "", Start: JSONTime{}, End: JSONTime{}, Rooms: "", Free: false}, }, { name: "one event", fields: fields{Name: "Event", Day: "test", Week: "test", Rooms: "test"}, - want: AnonymizedEventDTO{Day: "test", Week: "test", Start: types.DateTime{}, End: types.DateTime{}, Rooms: "test", Free: false}, + want: AnonymizedEventDTO{Day: "test", Week: "test", Start: JSONTime{}, End: JSONTime{}, Rooms: "test", Free: false}, }, { name: "one event with free", fields: fields{Name: "Räume zur freien Verfügung", Day: "test", Week: "test", Rooms: "test", Course: "test"}, - want: AnonymizedEventDTO{Day: "test", Week: "test", Start: types.DateTime{}, End: types.DateTime{}, Rooms: "test", Free: true}, + want: AnonymizedEventDTO{Day: "test", Week: "test", Start: JSONTime{}, End: JSONTime{}, Rooms: "test", Free: true}, }, { name: "another free event", - fields: fields{Name: "Zur freien Verfügung", Day: "Montag", Week: "5", Start: types.DateTime{}, End: types.DateTime{}, Rooms: "TR_A1.28-S", Course: "42INM-3"}, - want: AnonymizedEventDTO{Day: "Montag", Week: "5", Start: types.DateTime{}, End: types.DateTime{}, Rooms: "TR_A1.28-S", Free: true}, + fields: fields{Name: "Zur freien Verfügung", Day: "Montag", Week: "5", Start: JSONTime{}, End: JSONTime{}, Rooms: "TR_A1.28-S", Course: "42INM-3"}, + want: AnonymizedEventDTO{Day: "Montag", Week: "5", Start: JSONTime{}, End: JSONTime{}, Rooms: "TR_A1.28-S", Free: true}, }, } for _, tt := range tests { @@ -223,8 +225,8 @@ func TestEvent_GetName(t *testing.T) { UUID string Day string Week string - Start types.DateTime - End types.DateTime + Start JSONTime + End JSONTime Name string EventType string Compulsory string @@ -283,8 +285,8 @@ func TestEvent_SetCourse(t *testing.T) { UUID string Day string Week string - Start types.DateTime - End types.DateTime + Start JSONTime + End JSONTime Name string EventType string Compulsory string @@ -343,8 +345,8 @@ func TestEvent_SetName(t *testing.T) { UUID string Day string Week string - Start types.DateTime - End types.DateTime + Start JSONTime + End JSONTime Name string EventType string Compulsory string @@ -403,8 +405,8 @@ func TestEvent_TableName(t *testing.T) { UUID string Day string Week string - Start types.DateTime - End types.DateTime + Start JSONTime + End JSONTime Name string EventType string Compulsory string diff --git a/services/ical/service/functions/semester_test.go b/services/ical/service/functions/semester_test.go index eb71898..5a5f96c 100644 --- a/services/ical/service/functions/semester_test.go +++ b/services/ical/service/functions/semester_test.go @@ -1,7 +1,7 @@ package functions import ( - mockTime "htwkalender/service/functions/time" + mockTime "htwkalender-ical/service/functions/time" "reflect" "testing" "time" diff --git a/services/ical/service/functions/time/parse.go b/services/ical/service/functions/time/parse.go index 46523bc..97a4f22 100644 --- a/services/ical/service/functions/time/parse.go +++ b/services/ical/service/functions/time/parse.go @@ -17,20 +17,11 @@ package time import ( - "github.com/pocketbase/pocketbase/tools/types" - "log/slog" + "htwkalender-ical/model" "time" ) -func ParseTime(timeString string) (time.Time, error) { - return time.Parse("2006-01-02T15:04:05Z", timeString) -} - -func ParseAsTypesDatetime(time time.Time) types.DateTime { - dateTime, err := types.ParseDateTime(time) - if err != nil { - slog.Error("Failed to parse time as types.DateTime", "error", err) - return types.DateTime{} - } +func ParseAsTypesDatetime(time time.Time) model.JSONTime { + dateTime := model.JSONTime(time) return dateTime } diff --git a/services/ical/service/ical/icalFileGeneration_test.go b/services/ical/service/ical/icalFileGeneration_test.go index f48f413..c1a92f0 100644 --- a/services/ical/service/ical/icalFileGeneration_test.go +++ b/services/ical/service/ical/icalFileGeneration_test.go @@ -18,8 +18,8 @@ package ical import ( "github.com/jordic/goics" - "htwkalender/model" - mockTime "htwkalender/service/functions/time" + "htwkalender-ical/model" + mockTime "htwkalender-ical/service/functions/time" "reflect" "testing" "time" @@ -100,7 +100,7 @@ func TestIcalModel_EmitICal(t *testing.T) { Elements: []goics.Componenter{}, Properties: map[string][]string{ "DTSTAMP": {"20231201T000000Z"}, - "UID": {"a8d627d93f518e9096b6f40e36d27b7660fa26d318ef1adc43da750e49ebe4be@htwkalender.de"}, + "UID": {"5166fc0abd9d7750077261f1e26a26168d32c88af77198fe83af63e1ba6310dc@htwkalender.de"}, "DTEND": {"00010101T000000Z"}, "DTSTART": {"00010101T000000Z"}, "SUMMARY": {"Test"}, @@ -199,7 +199,7 @@ func TestIcalModel_EmitICal(t *testing.T) { Elements: []goics.Componenter{}, Properties: map[string][]string{ "DTSTAMP": {"20231201T000000Z"}, - "UID": {"b52a7a081f46eeba9b402114493278a34a48b572c84e53d7ac4da9dea15cdff2@htwkalender.de"}, + "UID": {"2463aac347bca19130d8e579b4b6d89a32c88f7c7e7f858e56477d94b71543a7@htwkalender.de"}, "DTEND": {"20231201T010000Z"}, "DTSTART": {"20231201T000000Z"}, "SUMMARY": {"UserDefinedName"}, @@ -212,7 +212,7 @@ func TestIcalModel_EmitICal(t *testing.T) { Elements: []goics.Componenter{}, Properties: map[string][]string{ "DTSTAMP": {"20231201T000000Z"}, - "UID": {"5e946c0c4474bc6e6337262093e3ef31477e026bbc6bab398d755b002506d9d7@htwkalender.de"}, + "UID": {"ea42fc31835128735636b235be552af559fae5329fe7e501f529130e11a7f3a1@htwkalender.de"}, "DTEND": {"20231201T010000Z"}, "DTSTART": {"20231201T000000Z"}, "SUMMARY": {"UserDefinedName"}, diff --git a/services/ical/service/names/userDefinedNameTemplates_test.go b/services/ical/service/names/userDefinedNameTemplates_test.go index 9fe9c7d..bb5ee2b 100644 --- a/services/ical/service/names/userDefinedNameTemplates_test.go +++ b/services/ical/service/names/userDefinedNameTemplates_test.go @@ -17,7 +17,7 @@ package names import ( - "htwkalender/model" + "htwkalender-ical/model" "testing" )