feat(batch5): implement jetstream error constructors group09
This commit is contained in:
@@ -1008,6 +1008,118 @@ public static partial class JsApiErrors
|
|||||||
return Clone(StreamExpectedLastSeqPerSubjectNotReady);
|
return Clone(StreamExpectedLastSeqPerSubjectNotReady);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamHeaderExceedsMaximumError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamHeaderExceedsMaximum);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamInfoMaxSubjectsError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamInfoMaxSubjects);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamInvalidError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamInvalid);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMaxBytesRequiredError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamMaxBytesRequired);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMaxStreamBytesExceededError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamMaxStreamBytesExceeded);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMessageExceedsMaximumError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamMessageExceedsMaximum);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMinLastSeqError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamMinLastSeq);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMirrorNotUpdatableError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamMirrorNotUpdatable);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMismatchError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamMismatch);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMoveAndScaleError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamMoveAndScale);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMoveNotInProgressError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamMoveNotInProgress);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamNameContainsPathSeparatorsError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamNameContainsPathSeparators);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamNameExistError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamNameExist);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamNameExistRestoreFailedError(params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return Clone(StreamNameExistRestoreFailed);
|
||||||
|
}
|
||||||
|
|
||||||
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)
|
||||||
@@ -1232,6 +1344,54 @@ public static partial class JsApiErrors
|
|||||||
return NewWithTags(StreamDelete, "{err}", err);
|
return NewWithTags(StreamDelete, "{err}", err);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamGeneralError(Exception err, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(StreamGeneralError, "{err}", err);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamInvalidConfigError(Exception err, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(StreamInvalidConfig, "{err}", err);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamInvalidExternalDeliverySubjError(object? prefix, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(StreamInvalidExternalDeliverySubj, "{prefix}", prefix);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamLimitsError(Exception err, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(StreamLimits, "{err}", err);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMoveInProgressError(object? msg, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(StreamMoveInProgress, "{msg}", msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static JsApiError NewJSStreamMsgDeleteFailedError(Exception err, params ErrorOption[] opts)
|
||||||
|
{
|
||||||
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
return Clone(overridden);
|
||||||
|
|
||||||
|
return NewWithTags(StreamMsgDeleteFailed, "{err}", err);
|
||||||
|
}
|
||||||
|
|
||||||
public static JsApiError NewJSStreamExternalApiOverlapError(object? prefix, object? subject, params ErrorOption[] opts)
|
public static JsApiError NewJSStreamExternalApiOverlapError(object? prefix, object? subject, params ErrorOption[] opts)
|
||||||
{
|
{
|
||||||
if (ParseOpts(opts) is JsApiError overridden)
|
if (ParseOpts(opts) is JsApiError overridden)
|
||||||
|
|||||||
@@ -267,4 +267,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_Group09()
|
||||||
|
{
|
||||||
|
JsApiErrors.NewJSStreamHeaderExceedsMaximumError().ErrCode.ShouldBe(JsApiErrors.StreamHeaderExceedsMaximum.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamInfoMaxSubjectsError().ErrCode.ShouldBe(JsApiErrors.StreamInfoMaxSubjects.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamInvalidError().ErrCode.ShouldBe(JsApiErrors.StreamInvalid.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamMaxBytesRequiredError().ErrCode.ShouldBe(JsApiErrors.StreamMaxBytesRequired.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamMaxStreamBytesExceededError().ErrCode.ShouldBe(JsApiErrors.StreamMaxStreamBytesExceeded.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamMessageExceedsMaximumError().ErrCode.ShouldBe(JsApiErrors.StreamMessageExceedsMaximum.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamMinLastSeqError().ErrCode.ShouldBe(JsApiErrors.StreamMinLastSeq.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamMirrorNotUpdatableError().ErrCode.ShouldBe(JsApiErrors.StreamMirrorNotUpdatable.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamMismatchError().ErrCode.ShouldBe(JsApiErrors.StreamMismatch.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamMoveAndScaleError().ErrCode.ShouldBe(JsApiErrors.StreamMoveAndScale.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamMoveNotInProgressError().ErrCode.ShouldBe(JsApiErrors.StreamMoveNotInProgress.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamNameContainsPathSeparatorsError().ErrCode.ShouldBe(JsApiErrors.StreamNameContainsPathSeparators.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamNameExistError().ErrCode.ShouldBe(JsApiErrors.StreamNameExist.ErrCode);
|
||||||
|
JsApiErrors.NewJSStreamNameExistRestoreFailedError().ErrCode.ShouldBe(JsApiErrors.StreamNameExistRestoreFailed.ErrCode);
|
||||||
|
|
||||||
|
JsApiErrors.NewJSStreamGeneralError(new InvalidOperationException("stream failed")).Description.ShouldBe("stream failed");
|
||||||
|
JsApiErrors.NewJSStreamInvalidConfigError(new InvalidOperationException("invalid config")).Description.ShouldBe("invalid config");
|
||||||
|
JsApiErrors.NewJSStreamInvalidExternalDeliverySubjError("api.*").Description.ShouldBe("stream external delivery prefix api.* must not contain wildcards");
|
||||||
|
JsApiErrors.NewJSStreamLimitsError(new InvalidOperationException("limit error")).Description.ShouldBe("limit error");
|
||||||
|
JsApiErrors.NewJSStreamMoveInProgressError("move-1").Description.ShouldBe("stream move already in progress: move-1");
|
||||||
|
JsApiErrors.NewJSStreamMsgDeleteFailedError(new InvalidOperationException("delete failed")).Description.ShouldBe("delete failed");
|
||||||
|
|
||||||
|
var expected = new JsApiError { Code = 491, ErrCode = 9098, Description = "override-9" };
|
||||||
|
var fromOverride = JsApiErrors.NewJSStreamHeaderExceedsMaximumError(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.
@@ -130,6 +130,20 @@ simple_methods=(
|
|||||||
"NewJSStreamDuplicateMessageConflictError|StreamDuplicateMessageConflict"
|
"NewJSStreamDuplicateMessageConflictError|StreamDuplicateMessageConflict"
|
||||||
"NewJSStreamExpectedLastSeqPerSubjectInvalidError|StreamExpectedLastSeqPerSubjectInvalid"
|
"NewJSStreamExpectedLastSeqPerSubjectInvalidError|StreamExpectedLastSeqPerSubjectInvalid"
|
||||||
"NewJSStreamExpectedLastSeqPerSubjectNotReadyError|StreamExpectedLastSeqPerSubjectNotReady"
|
"NewJSStreamExpectedLastSeqPerSubjectNotReadyError|StreamExpectedLastSeqPerSubjectNotReady"
|
||||||
|
"NewJSStreamHeaderExceedsMaximumError|StreamHeaderExceedsMaximum"
|
||||||
|
"NewJSStreamInfoMaxSubjectsError|StreamInfoMaxSubjects"
|
||||||
|
"NewJSStreamInvalidError|StreamInvalid"
|
||||||
|
"NewJSStreamMaxBytesRequiredError|StreamMaxBytesRequired"
|
||||||
|
"NewJSStreamMaxStreamBytesExceededError|StreamMaxStreamBytesExceeded"
|
||||||
|
"NewJSStreamMessageExceedsMaximumError|StreamMessageExceedsMaximum"
|
||||||
|
"NewJSStreamMinLastSeqError|StreamMinLastSeq"
|
||||||
|
"NewJSStreamMirrorNotUpdatableError|StreamMirrorNotUpdatable"
|
||||||
|
"NewJSStreamMismatchError|StreamMismatch"
|
||||||
|
"NewJSStreamMoveAndScaleError|StreamMoveAndScale"
|
||||||
|
"NewJSStreamMoveNotInProgressError|StreamMoveNotInProgress"
|
||||||
|
"NewJSStreamNameContainsPathSeparatorsError|StreamNameContainsPathSeparators"
|
||||||
|
"NewJSStreamNameExistError|StreamNameExist"
|
||||||
|
"NewJSStreamNameExistRestoreFailedError|StreamNameExistRestoreFailed"
|
||||||
)
|
)
|
||||||
|
|
||||||
templated_methods=(
|
templated_methods=(
|
||||||
@@ -161,6 +175,12 @@ templated_methods=(
|
|||||||
"NewJSStreamAssignmentError|Exception|err|StreamAssignment|{err}"
|
"NewJSStreamAssignmentError|Exception|err|StreamAssignment|{err}"
|
||||||
"NewJSStreamCreateError|Exception|err|StreamCreate|{err}"
|
"NewJSStreamCreateError|Exception|err|StreamCreate|{err}"
|
||||||
"NewJSStreamDeleteError|Exception|err|StreamDelete|{err}"
|
"NewJSStreamDeleteError|Exception|err|StreamDelete|{err}"
|
||||||
|
"NewJSStreamGeneralError|Exception|err|StreamGeneralError|{err}"
|
||||||
|
"NewJSStreamInvalidConfigError|Exception|err|StreamInvalidConfig|{err}"
|
||||||
|
"NewJSStreamInvalidExternalDeliverySubjError|object?|prefix|StreamInvalidExternalDeliverySubj|{prefix}"
|
||||||
|
"NewJSStreamLimitsError|Exception|err|StreamLimits|{err}"
|
||||||
|
"NewJSStreamMoveInProgressError|object?|msg|StreamMoveInProgress|{msg}"
|
||||||
|
"NewJSStreamMsgDeleteFailedError|Exception|err|StreamMsgDeleteFailed|{err}"
|
||||||
)
|
)
|
||||||
|
|
||||||
templated_methods_two_args=(
|
templated_methods_two_args=(
|
||||||
|
|||||||
Reference in New Issue
Block a user