github.com/cloudreve/Cloudreve/v3@v3.0.0-20240224133659-3edb00a6484c/pkg/serializer/error_test.go (about)

     1  package serializer
     2  
     3  import (
     4  	"errors"
     5  	"github.com/stretchr/testify/assert"
     6  	"testing"
     7  )
     8  
     9  func TestNewError(t *testing.T) {
    10  	a := assert.New(t)
    11  	err := NewError(400, "Bad Request", errors.New("error"))
    12  	a.Error(err)
    13  	a.EqualValues(400, err.Code)
    14  
    15  	err.WithError(errors.New("error2"))
    16  	a.Equal("error2", err.RawError.Error())
    17  	a.Equal("Bad Request", err.Error())
    18  
    19  	resp := &Response{
    20  		Code:  400,
    21  		Msg:   "Bad Request",
    22  		Error: "error",
    23  	}
    24  	err = NewErrorFromResponse(resp)
    25  	a.Error(err)
    26  }
    27  
    28  func TestDBErr(t *testing.T) {
    29  	a := assert.New(t)
    30  	resp := DBErr("", nil)
    31  	a.NotEmpty(resp.Msg)
    32  
    33  	resp = ParamErr("", nil)
    34  	a.NotEmpty(resp.Msg)
    35  }
    36  
    37  func TestErr(t *testing.T) {
    38  	a := assert.New(t)
    39  	err := NewError(400, "Bad Request", errors.New("error"))
    40  	resp := Err(400, "", err)
    41  	a.Equal("Bad Request", resp.Msg)
    42  }