github.com/pavlo67/common@v0.5.3/common/errors/errors_test.go (about)

     1  package errors
     2  
     3  import (
     4  	"fmt"
     5  	"log"
     6  	"testing"
     7  
     8  	"github.com/pavlo67/common/common"
     9  	"github.com/stretchr/testify/require"
    10  
    11  	"github.com/pkg/errors"
    12  )
    13  
    14  func TestCommonErrorKey(t *testing.T) {
    15  	testKey1 := Key("test_key1")
    16  	ke1 := CommonError(testKey1)
    17  	require.Equalf(t, testKey1, ke1.Key(), "%#v", ke1)
    18  
    19  	testKey2 := Key("test_key2")
    20  	ke2 := CommonError(testKey2, common.Map{"error": "q"})
    21  	require.Equalf(t, testKey2, ke2.Key(), "%#v", ke2)
    22  
    23  	testKey3 := Key("test_key3")
    24  	testMap3 := common.Map{"error": "q"}
    25  	ke3 := CommonError(testKey3, testMap3)
    26  	require.Equalf(t, testKey3, ke3.Key(), "%#v", ke3)
    27  	require.Equalf(t, testMap3, ke3.Data(), "%#v", ke3)
    28  }
    29  
    30  func TestCommonErrorString(t *testing.T) {
    31  	const TestKey Key = "test"
    32  	err1 := CommonError(TestKey, common.Map{"a": "b"})
    33  	log.Print("ERR1")
    34  	log.Printf("%ss:  %s", "%", err1)
    35  	log.Printf("%sv:  %v", "%", err1)
    36  	log.Printf("%s#v: %#v\n\n", "%", err1)
    37  
    38  	err2 := CommonError(err1, "111", errors.New("222"), err1) //
    39  	log.Print("ERR2")
    40  	log.Printf("%ss:  %s", "%", err2)
    41  	log.Printf("%sv:  %v", "%", err2)
    42  	log.Printf("%s#v: %#v", "%", err2)
    43  
    44  	errors.New("222")
    45  }
    46  
    47  func TestNil(t *testing.T) {
    48  	var err error
    49  
    50  	err = CommonError()
    51  	require.Truef(t, err == nil, "%#v", err)
    52  
    53  	err = CommonError(nil)
    54  	require.Truef(t, err == nil, "%#v", err)
    55  
    56  	err = CommonError(nil, nil)
    57  	require.Truef(t, err == nil, "%#v", err)
    58  
    59  	err = CommonError(nil, nil, nil)
    60  	require.Truef(t, err == nil, "%#v", err)
    61  
    62  }
    63  
    64  func TestWrapf(t *testing.T) {
    65  	err := errors.Wrapf(errors.New("eeeeee"), "22222 %s", "111")
    66  	log.Print(err)
    67  	err1 := CommonError(err, "can't init records.Operator")
    68  	log.Print(fmt.Errorf("error calling .Run() for component (%s): %#v", "name", err1))
    69  	log.Print(fmt.Errorf("error calling .Run() for component (%s): %s", "name", err1))
    70  }
    71  
    72  //func TestCommonErrorKey(t *testing.T) {
    73  //	testKey1 := Key("test_key1")
    74  //	ke1 := CommonError(testKey1, nil)
    75  //	require.Equalf(t, testKey1, ke1.Key(), "%#v", ke1)
    76  //
    77  //	testKey2 := Key("test_key2")
    78  //	ke2 := CommonError(testKey2, common.Map{"error": "q"})
    79  //	require.Equalf(t, testKey2, ke2.Key(), "%#v", ke2)
    80  //
    81  //	testKey3 := Key("test_key3")
    82  //	ke3 := CommonError(testKey3, common.Map{"error": "q"})
    83  //	require.Equalf(t, testKey3, ke3.Key(), "%#v", ke3)
    84  //
    85  //	testKey4 := Key("test_key4")
    86  //	ke4 := CommonError(testKey4, common.Map{"error": "q"})
    87  //	require.Equalf(t, testKey4, ke4.Key(), "%#v", ke4)
    88  //
    89  //}
    90  //
    91  //func TestCommonErrorString(t *testing.T) {
    92  //	const TestKey Key = "test"
    93  //	err1 := CommonError(TestKey, common.Map{"a": "b"})
    94  //	log.Print("ERR1")
    95  //	log.Printf("%ss:  %s", "%", err1)
    96  //	log.Printf("%sv:  %v", "%", err1)
    97  //	log.Printf("%s#v: %#v\n\n", "%", err1)
    98  //
    99  //	err2 := CommonError(err1, "111", errors.New("222"), err1) //
   100  //	log.Print("ERR2")
   101  //	log.Printf("%ss:  %s", "%", err2)
   102  //	log.Printf("%sv:  %v", "%", err2)
   103  //	log.Printf("%s#v: %#v", "%", err2)
   104  //
   105  //	errors.New("222")
   106  //}