Add SPC provider parsing helpers
This commit is contained in:
56
internal/providers/spc/product_test.go
Normal file
56
internal/providers/spc/product_test.go
Normal file
@@ -0,0 +1,56 @@
|
||||
package spc
|
||||
|
||||
import "testing"
|
||||
|
||||
func TestGeoJSONProductsStableOrder(t *testing.T) {
|
||||
got := GeoJSONProducts()
|
||||
if len(got) != 12 {
|
||||
t.Fatalf("GeoJSONProducts() length = %d, want 12", len(got))
|
||||
}
|
||||
|
||||
wantKeys := []string{
|
||||
"day1_categorical",
|
||||
"day1_tornado",
|
||||
"day1_hail",
|
||||
"day1_wind",
|
||||
"day2_categorical",
|
||||
"day2_tornado",
|
||||
"day2_hail",
|
||||
"day2_wind",
|
||||
"day3_categorical",
|
||||
"day3_tornado",
|
||||
"day3_hail",
|
||||
"day3_wind",
|
||||
}
|
||||
for i, want := range wantKeys {
|
||||
if got[i].Key != want {
|
||||
t.Fatalf("GeoJSONProducts()[%d].Key = %q, want %q", i, got[i].Key, want)
|
||||
}
|
||||
if err := validateProductDay(got[i].Day); err != nil {
|
||||
t.Fatalf("GeoJSONProducts()[%d].Day invalid: %v", i, err)
|
||||
}
|
||||
if got[i].URL == "" {
|
||||
t.Fatalf("GeoJSONProducts()[%d].URL is empty", i)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestDiscussionProductsStableOrder(t *testing.T) {
|
||||
got := DiscussionProducts()
|
||||
if len(got) != 3 {
|
||||
t.Fatalf("DiscussionProducts() length = %d, want 3", len(got))
|
||||
}
|
||||
|
||||
wantKeys := []string{"day1", "day2", "day3"}
|
||||
for i, want := range wantKeys {
|
||||
if got[i].Key != want {
|
||||
t.Fatalf("DiscussionProducts()[%d].Key = %q, want %q", i, got[i].Key, want)
|
||||
}
|
||||
if got[i].Day != i+1 {
|
||||
t.Fatalf("DiscussionProducts()[%d].Day = %d, want %d", i, got[i].Day, i+1)
|
||||
}
|
||||
if got[i].URL == "" {
|
||||
t.Fatalf("DiscussionProducts()[%d].URL is empty", i)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user