github.com/altipla-consulting/ravendb-go-client@v0.1.3/errors_test.go (about)

     1  package ravendb
     2  
     3  import (
     4  	"errors"
     5  	"github.com/stretchr/testify/assert"
     6  	"testing"
     7  )
     8  
     9  func TestErrorWrapping(t *testing.T) {
    10  	{
    11  		origErr := errors.New("an error")
    12  		err := newIllegalStateError("n: %d", 5, origErr)
    13  		assert.Equal(t, err.Error(), "n: 5")
    14  		assert.Equal(t, origErr, err.wrapped)
    15  	}
    16  
    17  	{
    18  		err := newIllegalArgumentError("just text")
    19  		assert.Equal(t, err.Error(), "just text")
    20  		assert.Nil(t, err.wrapped)
    21  	}
    22  
    23  	{
    24  		err := newIllegalArgumentError("%d, %s", 3, "hey")
    25  		assert.Equal(t, err.Error(), "3, hey")
    26  		assert.Nil(t, err.wrapped)
    27  	}
    28  
    29  	{
    30  		err := newSubscriptionDoesNotExistError("")
    31  		assert.True(t, isRavenError(err))
    32  	}
    33  
    34  	{
    35  		err := makeRavenErrorFromName("IndexCompilationException", "message")
    36  		_, ok := err.(*IndexCompilationError)
    37  		assert.True(t, ok)
    38  		assert.Equal(t, "message", err.Error())
    39  	}
    40  
    41  }