18 lines
477 B
Go
18 lines
477 B
Go
package merrors
|
|
|
|
import (
|
|
"errors"
|
|
"testing"
|
|
)
|
|
|
|
func TestChainExecutionPreconditionCarriesClassAndReason(t *testing.T) {
|
|
err := ChainExecutionPrecondition(ReasonChainExecutionInsufficientBalance, "source balance is insufficient")
|
|
if !errors.Is(err, ErrFailedPrecondition) {
|
|
t.Fatal("expected failed-precondition classification")
|
|
}
|
|
reason, ok := Reason(err)
|
|
if !ok || reason != ReasonChainExecutionInsufficientBalance {
|
|
t.Fatalf("unexpected reason: %q", reason)
|
|
}
|
|
}
|