mirror of https://github.com/dirtbags/moth.git
Sort puzzle list
This commit is contained in:
parent
97301fb222
commit
7d5e215b75
|
@ -6,6 +6,7 @@ import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
"log"
|
"log"
|
||||||
|
"sort"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
@ -80,6 +81,7 @@ func (m *Mothballs) Inventory() []Category {
|
||||||
pointsList = append(pointsList, pointval)
|
pointsList = append(pointsList, pointval)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
sort.Ints(pointsList)
|
||||||
categories = append(categories, Category{cat, pointsList})
|
categories = append(categories, Category{cat, pointsList})
|
||||||
}
|
}
|
||||||
return categories
|
return categories
|
||||||
|
|
|
@ -11,12 +11,14 @@ import (
|
||||||
var testFiles = []struct {
|
var testFiles = []struct {
|
||||||
Name, Body string
|
Name, Body string
|
||||||
}{
|
}{
|
||||||
{"puzzles.txt", "1\n2\n"},
|
{"puzzles.txt", "1\n3\n2\n"},
|
||||||
{"answers.txt", "1 answer123\n1 answer456\n2 wat\n"},
|
{"answers.txt", "1 answer123\n1 answer456\n2 wat\n"},
|
||||||
{"content/1/puzzle.json", `{"name": "moo"}`},
|
{"content/1/puzzle.json", `{"name": "moo"}`},
|
||||||
{"content/1/moo.txt", `moo`},
|
{"content/1/moo.txt", `moo`},
|
||||||
{"content/2/puzzle.json", `{}`},
|
{"content/2/puzzle.json", `{}`},
|
||||||
{"content/2/moo.txt", `moo`},
|
{"content/2/moo.txt", `moo`},
|
||||||
|
{"content/3/puzzle.json", `{}`},
|
||||||
|
{"content/3/moo.txt", `moo`},
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *Mothballs) createMothball(cat string) {
|
func (m *Mothballs) createMothball(cat string) {
|
||||||
|
@ -50,6 +52,15 @@ func TestMothballs(t *testing.T) {
|
||||||
t.Error("Wrong inventory size:", inv)
|
t.Error("Wrong inventory size:", inv)
|
||||||
}
|
}
|
||||||
for _, cat := range inv {
|
for _, cat := range inv {
|
||||||
|
switch cat.Name {
|
||||||
|
case "pategory":
|
||||||
|
if len(cat.Puzzles) != 3 {
|
||||||
|
t.Error("Puzzles list wrong length")
|
||||||
|
}
|
||||||
|
if cat.Puzzles[1] != 2 {
|
||||||
|
t.Error("Puzzles list not sorted")
|
||||||
|
}
|
||||||
|
}
|
||||||
for _, points := range cat.Puzzles {
|
for _, points := range cat.Puzzles {
|
||||||
f, _, err := m.Open(cat.Name, points, "puzzle.json")
|
f, _, err := m.Open(cat.Name, points, "puzzle.json")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
5
go.mod
5
go.mod
|
@ -3,11 +3,12 @@ module github.com/dirtbags/moth
|
||||||
go 1.13
|
go 1.13
|
||||||
|
|
||||||
require (
|
require (
|
||||||
|
github.com/GoBike/envflag v0.0.0-20160830095501-ae3268980a29
|
||||||
github.com/namsral/flag v1.7.4-pre // indirect
|
github.com/namsral/flag v1.7.4-pre // indirect
|
||||||
github.com/pkg/sftp v1.11.0 // indirect
|
github.com/pkg/sftp v1.11.0 // indirect
|
||||||
github.com/russross/blackfriday v2.0.0+incompatible // indirect
|
github.com/russross/blackfriday v2.0.0+incompatible
|
||||||
github.com/shurcooL/sanitized_anchor_name v1.0.0 // indirect
|
github.com/shurcooL/sanitized_anchor_name v1.0.0 // indirect
|
||||||
github.com/spf13/afero v1.3.4
|
github.com/spf13/afero v1.3.4
|
||||||
golang.org/x/tools v0.0.0-20200817190302-118ac038d721 // indirect
|
golang.org/x/tools v0.0.0-20200817190302-118ac038d721 // indirect
|
||||||
gopkg.in/yaml.v2 v2.3.0 // indirect
|
gopkg.in/yaml.v2 v2.3.0
|
||||||
)
|
)
|
||||||
|
|
2
go.sum
2
go.sum
|
@ -1,3 +1,5 @@
|
||||||
|
github.com/GoBike/envflag v0.0.0-20160830095501-ae3268980a29 h1:84c6FHGkcCdLxe0CcyrKdw8to2rMldZRhTAant7A6Q0=
|
||||||
|
github.com/GoBike/envflag v0.0.0-20160830095501-ae3268980a29/go.mod h1:rC4GgElEkJwdt5ldDml0BgrkguMji8hFftI6d1d6SeU=
|
||||||
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
|
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
|
||||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8=
|
github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8=
|
||||||
|
|
Loading…
Reference in New Issue