diff options
Diffstat (limited to 'internal/types')
| -rw-r--r-- | internal/types/entry.go | 10 | ||||
| -rw-r--r-- | internal/types/shared_test.go | 22 |
2 files changed, 26 insertions, 6 deletions
diff --git a/internal/types/entry.go b/internal/types/entry.go index 6e06aec..bac8fd1 100644 --- a/internal/types/entry.go +++ b/internal/types/entry.go @@ -8,7 +8,6 @@ import ( "os" "sort" "strings" - "time" ) type EntryID = string @@ -68,10 +67,12 @@ func NewEntryFromTextFile(filePath string) (Entry, error) { } func (e *Entry) initialize() { + e.checksumDirty = true + if e.Shared == nil { e.Shared = make(map[PlatformName]Shared) + return } - e.checksumDirty = true } func (e Entry) Equals(other Entry) bool { @@ -96,10 +97,7 @@ func (e Entry) IsShared(platform PlatformName) bool { } func (e Entry) SetShared(platform PlatformName) Entry { - e.Shared[platform] = Shared{ - Is: true, - Timestamp: time.Now().Format("20060102150405"), - } + e.Shared[platform] = newShared(true) return e } diff --git a/internal/types/shared_test.go b/internal/types/shared_test.go new file mode 100644 index 0000000..e8dd78a --- /dev/null +++ b/internal/types/shared_test.go @@ -0,0 +1,22 @@ +package types + +import ( + "testing" + "time" +) + +func TestShared(t *testing.T) { + t.Parallel() + + before := time.Now().Unix() + shared := newShared(false) + + if before > shared.Timestamp { + t.Errorf("expected %d to be after or equal %d", shared.Timestamp, before) + } + + after := time.Now().Unix() + if after < shared.Timestamp { + t.Errorf("expected %d to be before or equal %d", shared.Timestamp, before) + } +} |
