File tree Expand file tree Collapse file tree 4 files changed +13
-16
lines changed
Expand file tree Collapse file tree 4 files changed +13
-16
lines changed Original file line number Diff line number Diff line change @@ -69,6 +69,6 @@ fabric.properties
6969
7070tags
7171
72- trygolang
72+ bin /
7373.target
7474chinook.db
Original file line number Diff line number Diff line change @@ -17,15 +17,9 @@ CMD_PKG=$(PKG_NAME)/cmd/trygolang
1717
1818EXAMPLE =""
1919
20- ifdef ComSpec
21- RM_CMD=del
22- BIN_NAME=.\trygolang.exe
23- BIN_DIR=.\cmd\trygolang
24- else
25- RM_CMD=rm -f
26- BIN_NAME=./trygolang
27- BIN_DIR=./cmd/trygolang
28- endif
20+ RM_CMD =rm -f
21+ BIN_NAME =trygolang
22+ BIN_DIR =bin
2923
3024.PHONY : all
3125all : clean build test
@@ -47,7 +41,7 @@ _download_sqlite3_database:
4741
4842.PHONY : build
4943build : prepare
50- $(GOBUILD ) -race -o $(BIN_NAME ) $(CMD_PKG )
44+ $(GOBUILD ) -race -o bin/ $(BIN_NAME ) $(CMD_PKG )
5145
5246.PHONY : test
5347test : prepare
@@ -56,7 +50,7 @@ test: prepare
5650.PHONY : clean
5751clean : prepare
5852 $(GOCLEAN ) -i $(CMD_PKG )
59- $(RM_CMD ) $(BIN_NAME )
53+ $(RM_CMD ) $(BIN_DIR ) / $( BIN_NAME )
6054
6155.PHONY : install
6256install : prepare
Original file line number Diff line number Diff line change @@ -61,7 +61,7 @@ func main() {
6161 if args .ExampleName != "" {
6262 r = runner .NewOnce (runner .NewOnceArgs (args .ExampleName , mapping ))
6363 } else {
64- r = runner .NewLoop (runner .NewLoopArgs (args .OneTime , mapping ))
64+ r = runner .NewLoop (runner .NewLoopArgs (os . Stdin , args .OneTime , mapping ))
6565 }
6666
6767 if err := r .Run (); err != nil {
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ package runner
33import (
44 "bufio"
55 "fmt"
6- "os "
6+ "io "
77 "sort"
88 "strings"
99
@@ -18,14 +18,16 @@ type (
1818
1919 // LoopArgs -- Loop の引数データを表します.
2020 LoopArgs struct {
21+ In io.Reader // 入力
2122 OneTime bool // 一回実行で完了するかどうか
2223 Mapping mapping.ExampleMapping // マッピング情報
2324 }
2425)
2526
2627// NewLoopArgs -- 新しい LoopArgs を生成して返します.
27- func NewLoopArgs (oneTime bool , m mapping.ExampleMapping ) * LoopArgs {
28+ func NewLoopArgs (in io. Reader , oneTime bool , m mapping.ExampleMapping ) * LoopArgs {
2829 a := new (LoopArgs )
30+ a .In = in
2931 a .OneTime = oneTime
3032 a .Mapping = m
3133 return a
@@ -41,13 +43,14 @@ func NewLoop(args *LoopArgs) *Loop {
4143// Run -- 実行します.
4244func (c * Loop ) Run () error {
4345 var (
46+ in = c .Args .In
4447 oneTime = c .Args .OneTime
4548 mapping = c .Args .Mapping
4649 )
4750
4851 fmt .Print ("ENTER EXAMPLE NAME: " )
4952
50- stdinScanner := bufio .NewScanner (os . Stdin )
53+ stdinScanner := bufio .NewScanner (in )
5154 for stdinScanner .Scan () {
5255 var (
5356 numberOfCandidate int
You can’t perform that action at this time.
0 commit comments