|
|
|
@@ -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
|
|
|
|
|