File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -11,13 +11,13 @@ import (
1111func logAndExit (state msgState , v ... interface {}) {
1212 if state <= Merge {
1313 log .Printf (state .Hint (), v ... )
14- os .Exit (0 )
1514 } else if state <= FileMissing {
16- log .Fatalf (state .Hint (), v ... )
15+ log .Printf (state .Hint (), v ... )
1716 } else {
1817 log .Printf (state .Hint (), v ... )
19- log .Fatalf (Lang .Rule , Types )
18+ log .Printf (Lang .Rule , Types )
2019 }
20+ panic (state )
2121}
2222
2323func getMsg (path string ) string {
@@ -134,5 +134,18 @@ func main() {
134134
135135 msg := getMsg (msgFile )
136136
137+ defer func () {
138+ err := recover ()
139+ state , ok := err .(msgState )
140+ if ! ok {
141+ panic (err )
142+ }
143+
144+ if state <= Merge {
145+ os .Exit (0 )
146+ } else {
147+ os .Exit (int (state ))
148+ }
149+ }()
137150 validateMsg (msg )
138151}
Original file line number Diff line number Diff line change @@ -10,3 +10,15 @@ func TestGetMsg(t *testing.T) {
1010 t .Error ("Failed!" )
1111 }
1212}
13+
14+ func TestValidateSample (t * testing.T ) {
15+ defer func () {
16+ err := recover ()
17+ state , ok := err .(msgState )
18+ if ! ok || state > Merge {
19+ t .Errorf ("Failed! %v" , err )
20+ }
21+ }()
22+
23+ validateMsg (getMsg ("testcase/sample.txt" ))
24+ }
You can’t perform that action at this time.
0 commit comments