Add LoadAllSets
All checks were successful
continuous-integration/drone/tag Build is passing

This commit is contained in:
Hamcha 2019-06-28 22:35:47 +02:00
parent 37645e37f7
commit d2a2e4526b
Signed by: hamcha
GPG key ID: A40413D21021EAEE
3 changed files with 32 additions and 0 deletions

View file

@ -41,3 +41,18 @@ const (
BlockOdyssey BlockID = "EO" // Odyssey block - EO/HM/MT
BlockDefenders BlockID = "DE" // Defenders block - DE/SB/FF
)
var allSets = []SetID{
SetPremiere,
SetCanterlotNights,
SetRockNRave,
SetCelestialSolstice,
SetCrystalGames,
SetAbsoluteDiscord,
SetEquestrialOdysseys,
SetHighMagic,
SetMarksInTime,
SetDefendersOfEquestria,
SetSeaquestriaBeyond,
SetFriendsForever,
}

View file

@ -120,3 +120,14 @@ func LoadSetHTTP(id SetID) (*Set, error) {
return LoadSetBytes(id, data)
}
// LoadAllSets just loads all sets from the web
func LoadAllSets() error {
for _, set := range allSets {
_, err := LoadSetHTTP(set)
if err != nil {
return err
}
}
return nil
}

View file

@ -75,6 +75,12 @@ func TestAllLoads(t *testing.T) {
if err != nil {
t.Fatalf("[LoadSetMemory] Could not load set: %s", err.Error())
}
// Load all remaining sets
err = mlp.LoadAllSets()
if err != nil {
t.Fatalf("[LoadAllSets] Could not load remaining sets: %s", err.Error())
}
}
// TestNotLoadedErr tests that LoadSetMemory fails if set is not cached