Susumu Yata
null+****@clear*****
Wed Aug 2 11:32:19 JST 2017
Susumu Yata 2017-08-02 11:32:19 +0900 (Wed, 02 Aug 2017) New Revision: e0a888b68b930c49ca8e1e4d5ca0010835e9c9f5 https://github.com/groonga/grnci/commit/e0a888b68b930c49ca8e1e4d5ca0010835e9c9f5 Message: Remove EnhanceError. Modified files: v2/command.go v2/error.go v2/error_test.go v2/http.go v2/libgrn/libgrn.go Modified: v2/command.go (+10 -15) =================================================================== --- v2/command.go 2017-08-02 11:20:21 +0900 (a8b5890) +++ v2/command.go 2017-08-02 11:32:19 +0900 (fb5f834) @@ -648,9 +648,8 @@ func NewCommand(name string, params map[string]interface{}) (*Command, error) { } for k, v := range params { if err := c.SetParam(k, v); err != nil { - return nil, EnhanceError(err, map[string]interface{}{ - "name": name, - }) + err.(*Error).Data["name"] = name + return nil, err } } return c, nil @@ -753,9 +752,8 @@ func ParseCommand(cmd string) (*Command, error) { } c, err := newCommand(tokens[0]) if err != nil { - return nil, EnhanceError(err, map[string]interface{}{ - "command": cmd, - }) + err.(*Error).Data["command"] = cmd + return nil, err } for i := 1; i < len(tokens); i++ { var k, v string @@ -772,9 +770,8 @@ func ParseCommand(cmd string) (*Command, error) { } v = tokens[i] if err := c.SetParam(k, v); err != nil { - return nil, EnhanceError(err, map[string]interface{}{ - "command": cmd, - }) + err.(*Error).Data["command"] = cmd + return nil, err } } return c, nil @@ -860,9 +857,8 @@ func (c *Command) SetParam(key string, value interface{}) error { pf := c.format.params[c.index] fv, err := pf.Format(value) if err != nil { - return EnhanceError(err, map[string]interface{}{ - "name": c.name, - }) + err.(*Error).Data["name"] = c.name + return err } c.params[pf.key] = fv c.index++ @@ -870,9 +866,8 @@ func (c *Command) SetParam(key string, value interface{}) error { } fv, err := c.format.Format(key, value) if err != nil { - return EnhanceError(err, map[string]interface{}{ - "name": c.name, - }) + err.(*Error).Data["name"] = c.name + return err } c.params[key] = fv return nil Modified: v2/error.go (+0 -15) =================================================================== --- v2/error.go 2017-08-02 11:20:21 +0900 (d934e79) +++ v2/error.go 2017-08-02 11:32:19 +0900 (c0641db) @@ -258,21 +258,6 @@ func NewError(code ErrorCode, data map[string]interface{}) *Error { return err } -// EnhanceError adds data to err and returns the modified Error. -func EnhanceError(err error, data map[string]interface{}) *Error { - if e, ok := err.(*Error); ok { - for k, v := range data { - e.Data[k] = v - } - return e - } - e := NewError(UnexpectedError, data) - if _, ok := e.Data["error"]; !ok { - data["error"] = err.Error() - } - return e -} - // Error returns the JSON-encoded error object. func (e *Error) Error() string { b, _ := json.Marshal(e) Modified: v2/error_test.go (+0 -22) =================================================================== --- v2/error_test.go 2017-08-02 11:20:21 +0900 (2c22c1f) +++ v2/error_test.go 2017-08-02 11:32:19 +0900 (41aa8b5) @@ -21,25 +21,3 @@ func TestNewError(t *testing.T) { } log.Printf("err = %v", err) } - -func TestEnhanceError(t *testing.T) { - data := map[string]interface{}{ - "string": "value", - "int": 100, - } - newData := map[string]interface{}{ - "string": "value2", - "int": 1000, - "float": 1.0, - } - err := NewError(AddressError, data) - err = EnhanceError(err, newData) - if err.Code != AddressError { - t.Fatalf("NewError failed: Code: actual = %d, want = %d", err.Code, AddressError) - } - for k, v := range newData { - if err.Data[k] != v { - t.Fatalf("NewError failed: Data[\"%s\"]: actual = %s, want = %s", k, err.Data[k], v) - } - } -} Modified: v2/http.go (+4 -12) =================================================================== --- v2/http.go 2017-08-02 11:20:21 +0900 (78fa21c) +++ v2/http.go 2017-08-02 11:32:19 +0900 (b77ba1c) @@ -90,9 +90,7 @@ Loop: func parseHTTPResponseHeaderError(rc int, elems []interface{}) error { err := NewError(ErrorCode(rc), nil) if len(elems) >= 1 { - err = EnhanceError(err, map[string]interface{}{ - "message": elems[0], - }) + err.Data["message"] = elems[0] } if len(elems) >= 2 { if locs, ok := elems[1].([]interface{}); ok { @@ -100,23 +98,17 @@ func parseHTTPResponseHeaderError(rc int, elems []interface{}) error { if grnLocs, ok := locs[0].([]interface{}); ok { if len(grnLocs) >= 1 { if f, ok := grnLocs[0].(string); ok { - err = EnhanceError(err, map[string]interface{}{ - "function": f, - }) + err.Data["function"] = f } } if len(grnLocs) >= 2 { if f, ok := grnLocs[1].(string); ok { - err = EnhanceError(err, map[string]interface{}{ - "file": f, - }) + err.Data["file"] = f } } if len(grnLocs) >= 3 { if f, ok := grnLocs[2].(float64); ok { - err = EnhanceError(err, map[string]interface{}{ - "line": int(f), - }) + err.Data["line"] = f } } } Modified: v2/libgrn/libgrn.go (+1 -3) =================================================================== --- v2/libgrn/libgrn.go 2017-08-02 11:20:21 +0900 (541e679) +++ v2/libgrn/libgrn.go 2017-08-02 11:32:19 +0900 (3fe9823) @@ -236,9 +236,7 @@ func (db *grnDB) Close(ctx *grnCtx) error { if db.count == 0 { if rc := C.grn_obj_close(ctx.ctx, db.obj); rc != C.GRN_SUCCESS { if err := ctx.Err("C.grn_obj_close"); err != nil { - return grnci.EnhanceError(err, map[string]interface{}{ - "rc": int(rc), - }) + return err } return grnci.NewError(grnci.ErrorCode(rc), map[string]interface{}{ "method": "C.grn_obj_close", -------------- next part -------------- HTML����������������������������...Download