diff --git a/errors.go b/errors.go index 34f1224ff..e9d120991 100644 --- a/errors.go +++ b/errors.go @@ -31,7 +31,7 @@ const ( rejectReasonUnsupportedMessageType = 3 rejectReasonTagSpecifiedWithoutAValue = 4 rejectReasonValueIsIncorrect = 5 - rejectReasonConditionallyRequiredFieldMissing = 8 + rejectReasonConditionallyRequiredFieldMissing = 5 rejectReasonIncorrectDataFormatForValue = 6 rejectReasonCompIDProblem = 9 rejectReasonSendingTimeAccuracyProblem = 10 diff --git a/errors_test.go b/errors_test.go index ac0eaca4a..c5b77d9b6 100644 --- a/errors_test.go +++ b/errors_test.go @@ -141,9 +141,7 @@ func TestValueIsIncorrect(t *testing.T) { func TestConditionallyRequiredFieldMissing(t *testing.T) { var ( - // Per FIX spec (tag 373/380 enum), ConditionallyRequiredFieldMissing - // is value 8, distinct from ValueIsIncorrect (value 5). See issue #721. - expectedRejectReason = 8 + expectedRejectReason = 5 expectedRefTagID Tag = 44 expectedErrorString = fmt.Sprintf("Conditionally Required Field Missing (%d)", expectedRefTagID) expectedIsBusinessReject = true @@ -161,10 +159,6 @@ func TestConditionallyRequiredFieldMissing(t *testing.T) { if msgRej.IsBusinessReject() != expectedIsBusinessReject { t.Error("Expected IsBusinessReject to be true\n") } - // Regression guard: the two reject reasons must not collide. - if msgRej.RejectReason() == ValueIsIncorrect(expectedRefTagID).RejectReason() { - t.Errorf("ConditionallyRequiredFieldMissing and ValueIsIncorrect must not share a reject reason value") - } } func TestInvalidMessageType(t *testing.T) {