28 lines
764 B
Go
28 lines
764 B
Go
package webui
|
|
|
|
import (
|
|
"errors"
|
|
"testing"
|
|
|
|
"cmroubao/backend-api/internal/domain"
|
|
)
|
|
|
|
func TestMapFreightPreflightErrorUsesStablePublicErrors(t *testing.T) {
|
|
testCases := []struct {
|
|
err error
|
|
want error
|
|
}{
|
|
{domain.ErrFreightSourceOCRInvalid, ErrOCRServiceInvalid},
|
|
{domain.ErrFreightSourceNotConfigured, ErrERPNotConfigured},
|
|
{domain.ErrFreightSourceLoginRejected, ErrERPLoginRejected},
|
|
{domain.ErrFreightSourceProtocol, ErrERPProtocol},
|
|
{domain.ErrFreightSourceUnavailable, ErrERPUnavailable},
|
|
}
|
|
for _, testCase := range testCases {
|
|
actual := mapFreightPreflightError(testCase.err)
|
|
if !errors.Is(actual, testCase.want) || !errors.Is(actual, testCase.err) {
|
|
t.Fatalf("mapFreightPreflightError(%v) = %v", testCase.err, actual)
|
|
}
|
|
}
|
|
}
|