diff options
Diffstat (limited to 'internal/clock')
| -rw-r--r-- | internal/clock/clock.go | 28 | ||||
| -rw-r--r-- | internal/clock/clock_test.go | 24 |
2 files changed, 0 insertions, 52 deletions
diff --git a/internal/clock/clock.go b/internal/clock/clock.go deleted file mode 100644 index 8809109..0000000 --- a/internal/clock/clock.go +++ /dev/null @@ -1,28 +0,0 @@ -// Package clock abstracts time for testability. -package clock - -import "time" - -// Clock provides the current time. -type Clock interface { - Now() time.Time -} - -// RealClock uses the system clock. -type RealClock struct{} - -// Now returns the current time. -func (RealClock) Now() time.Time { return time.Now() } - -// MockClock is a fake clock for testing. -type MockClock struct { - T time.Time -} - -// Now returns the mock time. -func (m *MockClock) Now() time.Time { return m.T } - -var ( - _ Clock = (*RealClock)(nil) - _ Clock = (*MockClock)(nil) -) diff --git a/internal/clock/clock_test.go b/internal/clock/clock_test.go deleted file mode 100644 index 441e261..0000000 --- a/internal/clock/clock_test.go +++ /dev/null @@ -1,24 +0,0 @@ -package clock - -import ( - "testing" - "time" -) - -func TestRealClock_Now(t *testing.T) { - c := RealClock{} - before := time.Now() - got := c.Now() - after := time.Now() - if got.Before(before) || got.After(after) { - t.Fatalf("RealClock.Now() out of range: %v", got) - } -} - -func TestMockClock_Now(t *testing.T) { - fixed := time.Date(2024, 1, 1, 0, 0, 0, 0, time.UTC) - c := &MockClock{T: fixed} - if got := c.Now(); got != fixed { - t.Fatalf("expected %v, got %v", fixed, got) - } -} |
