chore: bump Go 1.18→1.26, fix typos, clean up tests

- Update go.mod to Go 1.26
- Fix help text typos ('menut' → 'menu', 'most-significant' → 'most-specific')
- Fix error comment typo ('ll' → 'all')
- Remove unnecessary fmt.Sprintf in test names
- Remove unused fmt imports from test files
- Add compile-time interface check for TimeWindow
This commit is contained in:
2026-02-22 21:01:23 +00:00
parent 433d28a87b
commit 8b431b5d2f
7 changed files with 12 additions and 11 deletions

View File

@@ -1,7 +1,6 @@
package msp
import (
"fmt"
"testing"
"time"
)
@@ -148,7 +147,7 @@ func TestGetChangeOvers(t *testing.T) {
},
}
for _, tc := range testCases {
t.Run(fmt.Sprintf("%s", tc.testID), func(t *testing.T) {
t.Run(tc.testID, func(t *testing.T) {
changeovers := GetChangeOvers(tc.periods...)
if !slicesEqual(changeovers, tc.result) {
t.Errorf("Expected %v but got %v", tc.result, changeovers)
@@ -320,7 +319,7 @@ func TestFlattenPeriods(t *testing.T) {
}
for _, tc := range testCases {
t.Run(fmt.Sprintf("%s", tc.testID), func(t *testing.T) {
t.Run(tc.testID, func(t *testing.T) {
changeovers := FlattenPeriods(tc.periods...)
if !slicesEqual(changeovers, tc.result) {
t.Errorf("Expected %v but got %v", tc.result, changeovers)
@@ -468,7 +467,7 @@ func TestGetNextChangeOver(t *testing.T) {
},
}
for _, tc := range testCases {
t.Run(fmt.Sprintf("%s", tc.testID), func(t *testing.T) {
t.Run(tc.testID, func(t *testing.T) {
ts, err := GetNextChangeOver(now, tc.periods...)
if tc.err != err {
t.Errorf("Error %v does not match expected %v", tc.err, err)

View File

@@ -5,9 +5,9 @@ import (
)
var (
// ErrEndAfterStart occurs when a period given has an end time after its start time
// ErrEndAfterStart occurs when a period's start time is after its end time
ErrEndAfterStart = errors.New("error: start time is after end time")
// ErrNoValidPeriods occurs when an empty set of periods is passed or when ll periods are invalid
// ErrNoValidPeriods occurs when an empty set of periods is passed or when all periods are invalid
ErrNoValidPeriods = errors.New("error: no valid periods available")
// ErrNoNextChangeover occurs when GetNextChangeover is called but there are no changeovers after t
ErrNoNextChangeover = errors.New("error: no valid changeovers available")

View File

@@ -1,7 +1,6 @@
package msp
import (
"fmt"
"testing"
"time"
)
@@ -146,7 +145,7 @@ func TestMostSpecificPeriod(t *testing.T) {
},
}
for _, tc := range testCases {
t.Run(fmt.Sprintf("%s", tc.testID), func(t *testing.T) {
t.Run(tc.testID, func(t *testing.T) {
id, err := MostSpecificPeriod(tc.ts, tc.periods...)
if id != tc.result {
t.Errorf("ID '%s' does not match expected '%s'", id, tc.result)

View File

@@ -263,7 +263,7 @@ func TestGenerateTime(t *testing.T) {
}
for _, tc := range testCases {
t.Run(fmt.Sprintf("%s", tc.testID), func(t *testing.T) {
t.Run(tc.testID, func(t *testing.T) {
timeline := GenerateTimeline(tc.periods...)
if len(timeline) != len(tc.result) {
t.Fatalf("Time line had %d results, expected %d", len(timeline), len(tc.result))

View File

@@ -2,6 +2,9 @@ package msp
import "time"
// Compile-time interface check.
var _ Period = TimeWindow{}
type Period interface {
GetStartTime() time.Time
GetEndTime() time.Time