Bootstrap copied BFF and local accounts with public Sendico contracts (#34)
This commit is contained in:
1 parent
67dc5b5b1e
commit
7062672a87
556 files changed
+42291
-777
No files matched your search
@@ -0,0 +1,48 @@
|
||||
package merrors
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestLedgerReasonRoundTrip(t *testing.T) {
|
||||
err := LedgerIdempotencyConflict("conflicting command")
|
||||
reason, ok := Reason(err)
|
||||
require.True(t, ok)
|
||||
require.Equal(t, ReasonLedgerIdempotencyConflict, reason)
|
||||
|
||||
restored, ok := FromReason(reason, "conflicting command")
|
||||
require.True(t, ok)
|
||||
require.True(t, errors.Is(restored, ErrLedgerIdempotencyConflict))
|
||||
require.True(t, errors.Is(restored, ErrDataConflict))
|
||||
}
|
||||
|
||||
func TestAccountNotEligibleReasonRoundTrip(t *testing.T) {
|
||||
err := AccountNotEligible("account is frozen")
|
||||
reason, ok := Reason(err)
|
||||
require.True(t, ok)
|
||||
require.Equal(t, ReasonAccountNotEligible, reason)
|
||||
require.True(t, errors.Is(err, ErrAccountNotEligible))
|
||||
require.True(t, errors.Is(err, ErrFailedPrecondition))
|
||||
|
||||
restored, ok := FromReason(reason, "account is frozen")
|
||||
require.True(t, ok)
|
||||
require.True(t, errors.Is(restored, ErrAccountNotEligible))
|
||||
require.True(t, errors.Is(restored, ErrFailedPrecondition))
|
||||
}
|
||||
|
||||
func TestLedgerAccessViolationReasonRoundTrip(t *testing.T) {
|
||||
err := LedgerAccessViolation("from_account: account does not belong to organization")
|
||||
reason, ok := Reason(err)
|
||||
require.True(t, ok)
|
||||
require.Equal(t, ReasonLedgerAccessViolation, reason)
|
||||
require.True(t, errors.Is(err, ErrLedgerAccessViolation))
|
||||
require.True(t, errors.Is(err, ErrFailedPrecondition))
|
||||
|
||||
restored, ok := FromReason(reason, "from_account: account does not belong to organization")
|
||||
require.True(t, ok)
|
||||
require.True(t, errors.Is(restored, ErrLedgerAccessViolation))
|
||||
require.True(t, errors.Is(restored, ErrFailedPrecondition))
|
||||
}
|
||||
Reference in new issue
Block a user