summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main.go11
1 files changed, 8 insertions, 3 deletions
diff --git a/main.go b/main.go
index 3f5efd6..ffd7e20 100644
--- a/main.go
+++ b/main.go
@@ -4,6 +4,7 @@ import (
"bufio"
"flag"
"fmt"
+ "io"
"log"
"math/rand"
"os"
@@ -23,13 +24,17 @@ type generator struct {
dict []string
}
-func (g *generator) loadWords(fname string) error {
+func (g *generator) loadWordsFile(fname string) error {
fd, err := os.Open(fname)
if err != nil {
return err
}
defer fd.Close()
- scanner := bufio.NewScanner(fd)
+ return g.loadWords(fd)
+}
+
+func (g *generator) loadWords(r io.Reader) error {
+ scanner := bufio.NewScanner(r)
for scanner.Scan() {
g.dict = append(g.dict, scanner.Text())
}
@@ -62,7 +67,7 @@ func main() {
flag.BoolVar(&g.titleWords, "title", false, "make first letter uppercase")
flag.BoolVar(&g.addNumber, "number", false, "append random number to the end (0 - 9)")
flag.Parse()
- if err := g.loadWords("data/wordlist.txt"); err != nil {
+ if err := g.loadWordsFile("data/wordlist.txt"); err != nil {
log.Fatal(err)
}
fmt.Println(g.generate(rand.New(cryptoSource{})))