package response_test import ( "errors" "net/http" "testing" errs "gateway/internal/library/errors" "gateway/internal/library/errors/code" "gateway/internal/response" ) func TestWrapRequestError(t *testing.T) { t.Parallel() response.RequestErrScope = code.Facade e := response.WrapRequestError(errors.New("field id is required")) be := errs.FromError(e) if be == nil { t.Fatal("expected business error") } if be.Category() != code.InputInvalidFormat { t.Fatalf("category = %d, want %d", be.Category(), code.InputInvalidFormat) } if be.HTTPStatus() != http.StatusBadRequest { t.Fatalf("http = %d, want 400", be.HTTPStatus()) } } func TestWrapRequestErrorPreservesBusinessError(t *testing.T) { t.Parallel() orig := errs.For(code.Facade).ResNotFound("x") if response.WrapRequestError(orig) != orig { t.Fatal("business error should not be wrapped") } }