github.com/0xPolygon/supernets2-node@v0.0.0-20230711153321-2fe574524eaa/etherman/errors_test.go (about) 1 package etherman 2 3 import ( 4 "fmt" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 ) 9 10 func TestTryParseWithExactMatch(t *testing.T) { 11 expected := ErrTimestampMustBeInsideRange 12 smartContractErr := expected 13 14 actualErr, ok := tryParseError(smartContractErr) 15 16 assert.ErrorIs(t, actualErr, expected) 17 assert.True(t, ok) 18 } 19 20 func TestTryParseWithContains(t *testing.T) { 21 expected := ErrTimestampMustBeInsideRange 22 smartContractErr := fmt.Errorf(" execution reverted: ProofOfEfficiency::sequenceBatches: %s", expected) 23 24 actualErr, ok := tryParseError(smartContractErr) 25 26 assert.ErrorIs(t, actualErr, expected) 27 assert.True(t, ok) 28 } 29 30 func TestTryParseWithNonExistingErr(t *testing.T) { 31 smartContractErr := fmt.Errorf("some non-existing err") 32 33 actualErr, ok := tryParseError(smartContractErr) 34 35 assert.Nil(t, actualErr) 36 assert.False(t, ok) 37 }