feat(batch5): implement jetstream error constructors group03
This commit is contained in:
@@ -264,6 +264,134 @@ public static partial class JsApiErrors
|
|||||||
return Clone(ConsumerDoesNotExist);
|
return Clone(ConsumerDoesNotExist);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerDuplicateFilterSubjectsError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerDuplicateFilterSubjects);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerDurableNameNotInSubjectError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerDurableNameNotInSubject);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerDurableNameNotMatchSubjectError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerDurableNameNotMatchSubject);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerDurableNameNotSetError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerDurableNameNotSet);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerEmptyFilterError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerEmptyFilter);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerEmptyGroupNameError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerEmptyGroupName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerEphemeralWithDurableInSubjectError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerEphemeralWithDurableInSubject);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerEphemeralWithDurableNameError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerEphemeralWithDurableName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerExistingActiveError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerExistingActive);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerFCRequiresPushError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerFCRequiresPush);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerFilterNotSubsetError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerFilterNotSubset);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerHBRequiresPushError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerHBRequiresPush);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerInvalidDeliverSubjectError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerInvalidDeliverSubject);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerInvalidGroupNameError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerInvalidGroupName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerInvalidPriorityGroupError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerInvalidPriorityGroup);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerMaxDeliverBackoffError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(ConsumerMaxDeliverBackoff);
|
||||||
|
}
|
||||||
|
|
||||||
public static JsApiError NewJSAtomicPublishTooLargeBatchError(object? size, params ErrorOption[] opts)
|
public static JsApiError NewJSAtomicPublishTooLargeBatchError(object? size, params ErrorOption[] opts)
|
||||||
{
|
{
|
||||||
if (ParseOpts(opts) is JsApiError overridden)
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
@@ -304,4 +432,36 @@ public static partial class JsApiErrors
|
|||||||
return NewWithTags(ConsumerDescriptionTooLong, "{max}", max);
|
return NewWithTags(ConsumerDescriptionTooLong, "{max}", max);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerInactiveThresholdExcessError(object? limit, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(ConsumerInactiveThresholdExcess, "{limit}", limit);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerInvalidPolicyError(Exception err, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(ConsumerInvalidPolicy, "{err}", err);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerInvalidResetError(Exception err, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(ConsumerInvalidReset, "{err}", err);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSConsumerInvalidSamplingError(Exception err, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(ConsumerInvalidSampling, "{err}", err);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -69,4 +69,37 @@ public sealed class JetStreamErrorsGeneratedConstructorsTests
|
|||||||
fromOverride.Description.ShouldBe(expected.Description);
|
fromOverride.Description.ShouldBe(expected.Description);
|
||||||
ReferenceEquals(fromOverride, expected).ShouldBeFalse();
|
ReferenceEquals(fromOverride, expected).ShouldBeFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public void ConstructorSurface_Group03()
|
||||||
|
{
|
||||||
|
JsApiErrors.NewJSConsumerDuplicateFilterSubjectsError().ErrCode.ShouldBe(JsApiErrors.ConsumerDuplicateFilterSubjects.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerDurableNameNotInSubjectError().ErrCode.ShouldBe(JsApiErrors.ConsumerDurableNameNotInSubject.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerDurableNameNotMatchSubjectError().ErrCode.ShouldBe(JsApiErrors.ConsumerDurableNameNotMatchSubject.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerDurableNameNotSetError().ErrCode.ShouldBe(JsApiErrors.ConsumerDurableNameNotSet.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerEmptyFilterError().ErrCode.ShouldBe(JsApiErrors.ConsumerEmptyFilter.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerEmptyGroupNameError().ErrCode.ShouldBe(JsApiErrors.ConsumerEmptyGroupName.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerEphemeralWithDurableInSubjectError().ErrCode.ShouldBe(JsApiErrors.ConsumerEphemeralWithDurableInSubject.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerEphemeralWithDurableNameError().ErrCode.ShouldBe(JsApiErrors.ConsumerEphemeralWithDurableName.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerExistingActiveError().ErrCode.ShouldBe(JsApiErrors.ConsumerExistingActive.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerFCRequiresPushError().ErrCode.ShouldBe(JsApiErrors.ConsumerFCRequiresPush.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerFilterNotSubsetError().ErrCode.ShouldBe(JsApiErrors.ConsumerFilterNotSubset.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerHBRequiresPushError().ErrCode.ShouldBe(JsApiErrors.ConsumerHBRequiresPush.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerInvalidDeliverSubjectError().ErrCode.ShouldBe(JsApiErrors.ConsumerInvalidDeliverSubject.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerInvalidGroupNameError().ErrCode.ShouldBe(JsApiErrors.ConsumerInvalidGroupName.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerInvalidPriorityGroupError().ErrCode.ShouldBe(JsApiErrors.ConsumerInvalidPriorityGroup.ErrCode);
|
||||||
|
JsApiErrors.NewJSConsumerMaxDeliverBackoffError().ErrCode.ShouldBe(JsApiErrors.ConsumerMaxDeliverBackoff.ErrCode);
|
||||||
|
|
||||||
|
JsApiErrors.NewJSConsumerInactiveThresholdExcessError(777).Description.ShouldBe("consumer inactive threshold exceeds system limit of 777");
|
||||||
|
JsApiErrors.NewJSConsumerInvalidPolicyError(new InvalidOperationException("invalid policy")).Description.ShouldBe("invalid policy");
|
||||||
|
JsApiErrors.NewJSConsumerInvalidResetError(new InvalidOperationException("bad reset")).Description.ShouldBe("invalid reset: bad reset");
|
||||||
|
JsApiErrors.NewJSConsumerInvalidSamplingError(new InvalidOperationException("bad sampling")).Description.ShouldBe("failed to parse consumer sampling configuration: bad sampling");
|
||||||
|
|
||||||
|
var expected = new JsApiError { Code = 497, ErrCode = 9092, Description = "override-3" };
|
||||||
|
var fromOverride = JsApiErrors.NewJSConsumerDuplicateFilterSubjectsError(JsApiErrors.Unless(expected));
|
||||||
|
fromOverride.Code.ShouldBe(expected.Code);
|
||||||
|
fromOverride.ErrCode.ShouldBe(expected.ErrCode);
|
||||||
|
fromOverride.Description.ShouldBe(expected.Description);
|
||||||
|
ReferenceEquals(fromOverride, expected).ShouldBeFalse();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
porting.db
BIN
porting.db
Binary file not shown.
@@ -37,6 +37,22 @@ simple_methods=(
|
|||||||
"NewJSConsumerDirectRequiresEphemeralError|ConsumerDirectRequiresEphemeral"
|
"NewJSConsumerDirectRequiresEphemeralError|ConsumerDirectRequiresEphemeral"
|
||||||
"NewJSConsumerDirectRequiresPushError|ConsumerDirectRequiresPush"
|
"NewJSConsumerDirectRequiresPushError|ConsumerDirectRequiresPush"
|
||||||
"NewJSConsumerDoesNotExistError|ConsumerDoesNotExist"
|
"NewJSConsumerDoesNotExistError|ConsumerDoesNotExist"
|
||||||
|
"NewJSConsumerDuplicateFilterSubjectsError|ConsumerDuplicateFilterSubjects"
|
||||||
|
"NewJSConsumerDurableNameNotInSubjectError|ConsumerDurableNameNotInSubject"
|
||||||
|
"NewJSConsumerDurableNameNotMatchSubjectError|ConsumerDurableNameNotMatchSubject"
|
||||||
|
"NewJSConsumerDurableNameNotSetError|ConsumerDurableNameNotSet"
|
||||||
|
"NewJSConsumerEmptyFilterError|ConsumerEmptyFilter"
|
||||||
|
"NewJSConsumerEmptyGroupNameError|ConsumerEmptyGroupName"
|
||||||
|
"NewJSConsumerEphemeralWithDurableInSubjectError|ConsumerEphemeralWithDurableInSubject"
|
||||||
|
"NewJSConsumerEphemeralWithDurableNameError|ConsumerEphemeralWithDurableName"
|
||||||
|
"NewJSConsumerExistingActiveError|ConsumerExistingActive"
|
||||||
|
"NewJSConsumerFCRequiresPushError|ConsumerFCRequiresPush"
|
||||||
|
"NewJSConsumerFilterNotSubsetError|ConsumerFilterNotSubset"
|
||||||
|
"NewJSConsumerHBRequiresPushError|ConsumerHBRequiresPush"
|
||||||
|
"NewJSConsumerInvalidDeliverSubjectError|ConsumerInvalidDeliverSubject"
|
||||||
|
"NewJSConsumerInvalidGroupNameError|ConsumerInvalidGroupName"
|
||||||
|
"NewJSConsumerInvalidPriorityGroupError|ConsumerInvalidPriorityGroup"
|
||||||
|
"NewJSConsumerMaxDeliverBackoffError|ConsumerMaxDeliverBackoff"
|
||||||
)
|
)
|
||||||
|
|
||||||
templated_methods=(
|
templated_methods=(
|
||||||
@@ -45,6 +61,10 @@ templated_methods=(
|
|||||||
"NewJSClusterNoPeersError|Exception|err|ClusterNoPeers|{err}"
|
"NewJSClusterNoPeersError|Exception|err|ClusterNoPeers|{err}"
|
||||||
"NewJSConsumerCreateError|Exception|err|ConsumerCreateErr|{err}"
|
"NewJSConsumerCreateError|Exception|err|ConsumerCreateErr|{err}"
|
||||||
"NewJSConsumerDescriptionTooLongError|object?|max|ConsumerDescriptionTooLong|{max}"
|
"NewJSConsumerDescriptionTooLongError|object?|max|ConsumerDescriptionTooLong|{max}"
|
||||||
|
"NewJSConsumerInactiveThresholdExcessError|object?|limit|ConsumerInactiveThresholdExcess|{limit}"
|
||||||
|
"NewJSConsumerInvalidPolicyError|Exception|err|ConsumerInvalidPolicy|{err}"
|
||||||
|
"NewJSConsumerInvalidResetError|Exception|err|ConsumerInvalidReset|{err}"
|
||||||
|
"NewJSConsumerInvalidSamplingError|Exception|err|ConsumerInvalidSampling|{err}"
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user