test(batch49): port 126 JetStream core integration tests
This commit is contained in:
@@ -0,0 +1,194 @@
|
||||
// Copyright 2025 The NATS Authors
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// Mirrors server/jetstream_consumer_test.go in the NATS server Go source.
|
||||
// ALL tests in this file are deferred: they require a running JetStream server.
|
||||
|
||||
namespace ZB.MOM.NatsNet.Server.IntegrationTests.JetStream;
|
||||
|
||||
/// <summary>
|
||||
/// Integration tests for JetStream consumer operations.
|
||||
/// Mirrors server/jetstream_consumer_test.go.
|
||||
/// All tests are deferred pending JetStream server infrastructure.
|
||||
/// </summary>
|
||||
[Trait("Category", "Integration")]
|
||||
public sealed class JetStreamConsumerTests
|
||||
{
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MultipleFiltersLastPerSubject_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void Delete_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void StuckAckPending_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void Unpin_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void WithPriorityGroups_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PriorityPullRequests_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void RetryAckAfterTimeout_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SwitchLeaderDuringInflightAck_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MessageDeletedDuringRedelivery_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void DeliveryCount_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void Create_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void EphemeralRecoveryAfterServerRestart_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MaxDeliveryAndServerRestart_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void DeleteAndServerRestart_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void DurableReconnectWithOnlyPending_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void Reconnect_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void DurableReconnect_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void CleanupWithRetentionPolicy_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void InternalClientLeak_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void NoMsgPayload_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PendingCountWithRedeliveries_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MaxDeliverUpdate_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void StreamUpdate_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void UpdateFilterSubject_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PullConsumerOneShotOnMaxAckLimit_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PendingLowerThanStreamFirstSeq_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void EOFBugNewFileStore_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void Purge_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void FilterUpdate_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AckFloorWithExpired_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void DefaultsFromStream_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void NakThenAckFloorMove_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PauseViaEndpoint_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SurvivesRestart_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void DontDecrementPendingCountOnSkippedMsg_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PendingCountAfterMsgAckAboveFloor_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PullCrossAccountExpires_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PullLastPerSubjectRedeliveries_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PullLargeBatchExpired_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void StateAlwaysFromStore_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PullNoWaitBatchLargerThanPending_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void NotInactiveDuringAckWait_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void NotInactiveDuringAckWaitBackoff_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void Prioritized_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MaxDeliverUnderflow_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void NoWaitNoMessagesOnEos_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void NoWaitNoMessagesOnEosWithDeliveredMsgs_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void WithCorruptStateIsDeleted_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void NoDeleteAfterConcurrentShutdownAndLeaderChange_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void OnlyRecalculatePendingIfFilterSubjectUpdated_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void CheckNumPending_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AllowOverlappingSubjectsIfNotSubset_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void ResetToSequence_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void ResetToSequenceConstraintOnStartSeq_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void ResetToSequenceConstraintOnStartTime_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SingleFilterSubjectInFilterSubjects_ShouldSucceed() { }
|
||||
}
|
||||
@@ -0,0 +1,236 @@
|
||||
// Copyright 2025 The NATS Authors
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// Mirrors server/jetstream_test.go in the NATS server Go source.
|
||||
// ALL tests in this file are deferred: they require a running JetStream server.
|
||||
|
||||
namespace ZB.MOM.NatsNet.Server.IntegrationTests.JetStream;
|
||||
|
||||
/// <summary>
|
||||
/// Integration tests for JetStream core operations.
|
||||
/// Mirrors server/jetstream_test.go.
|
||||
/// All tests are deferred pending JetStream server infrastructure.
|
||||
/// </summary>
|
||||
[Trait("Category", "Integration")]
|
||||
public sealed class JetStreamTests
|
||||
{
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AddStreamOverlapWithJSAPISubjects_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PublishDeDupe_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void UsageNoReservation_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void UsageReservationNegativeMaxBytes_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SnapshotsAPI_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void InterestRetentionStreamWithFilteredConsumers_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SimpleFileRecovery_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PushConsumerFlowControl_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void FilteredStreamNames_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void UpdateStream_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void DeleteMsg_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void DeliveryAfterServerRestart_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void ConfigReloadWithGlobalAccount_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void GetLastMsgBySubject_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void GetLastMsgBySubjectAfterUpdate_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void LastSequenceBySubject_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void LastSequenceBySubjectWithSubject_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MirrorBasics_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SourceBasics_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SourceWorkingQueueWithLimit_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void StreamSourceFromKV_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void InputTransform_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void ServerEncryption_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void EphemeralPullConsumers_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void RemoveExternalSource_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void InvalidRestoreRequests_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void ProperErrorDueToOverlapSubjects_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MsgBlkFailOnKernelFault_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PartialPurgeWithAckPending_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PurgeWithRedeliveredPending_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void LastSequenceBySubjectConcurrent_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void LimitsToInterestPolicy_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void LimitsToInterestPolicyWhileAcking_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SyncInterval_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SubjectFilteredPurgeClearsPendingAcks_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AckAllWithLargeFirstSequenceAndNoAckFloor_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AckAllWithLargeFirstSequenceAndNoAckFloorWithInterestPolicy_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AuditStreams_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SourceRemovalAndReAdd_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void RateLimitHighStreamIngestDefaults_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void SourcingClipStartSeq_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MirroringClipStartSeq_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MessageTTLWhenSourcing_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MessageTTLWhenMirroring_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void InterestMaxDeliveryReached_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void WQMaxDeliveryReached_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MaxDeliveryRedeliveredReporting_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void UpgradeConsumerVersioning_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void THWExpireTasksRace_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void StreamRetentionUpdatesConsumers_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MaxMsgsPerSubjectAndDeliverLastPerSubject_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AllowMsgCounter_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AllowMsgCounterMaxPayloadAndSize_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AllowMsgCounterMirror_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AllowMsgCounterSourceAggregates_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AllowMsgCounterSourceVerbatim_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void AllowMsgCounterSourceStartingAboveZero_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PromoteMirrorDeletingOrigin_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PromoteMirrorUpdatingOrigin_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void OfflineStreamAndConsumerAfterDowngrade_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void PersistModeAsync_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void RemoveTTLOnRemoveMsg_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void MessageTTLNotExpiring_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void DirectGetBatchParallelWriteDeadlock_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void StreamMirrorWithoutDuplicateWindow_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void StreamSourceWithoutDuplicateWindow_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void FileStoreErrorOpeningBlockAfterTruncate_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void CleanupNoInterestAboveThreshold_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void StoreFilterIsAll_ShouldSucceed() { }
|
||||
|
||||
[Fact(Skip = "deferred: requires running JetStream server")]
|
||||
public void FlowControlCrossAccountFanOut_ShouldSucceed() { }
|
||||
}
|
||||
Reference in New Issue
Block a user