git.frostfs.info/TrueCloudLab/frostfs-sdk-go@v0.0.0-20241022124111-5361f0ecebd3/client/status/status_test.go (about)

     1  package apistatus_test
     2  
     3  import (
     4  	"errors"
     5  	"testing"
     6  
     7  	apistatus "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/client/status"
     8  	"github.com/stretchr/testify/require"
     9  )
    10  
    11  func TestErrors(t *testing.T) {
    12  	t.Run("error source", func(t *testing.T) {
    13  		err := errors.New("some error")
    14  
    15  		st := apistatus.ErrToStatus(err)
    16  
    17  		success := apistatus.IsSuccessful(st)
    18  		require.False(t, success)
    19  
    20  		res := apistatus.ErrFromStatus(st)
    21  
    22  		require.Equal(t, err, res)
    23  	})
    24  
    25  	t.Run("non-error source", func(t *testing.T) {
    26  		var st apistatus.Status = "any non-error type"
    27  
    28  		success := apistatus.IsSuccessful(st)
    29  		require.True(t, success)
    30  
    31  		res := apistatus.ErrFromStatus(st)
    32  
    33  		require.Nil(t, res)
    34  	})
    35  }