public SnapshotObservable(IElasticClient elasticClient, ISnapshotRequest snapshotRequest) { elasticClient.ThrowIfNull(nameof(elasticClient)); snapshotRequest.ThrowIfNull(nameof(snapshotRequest)); _elasticClient = elasticClient; _snapshotRequest = snapshotRequest; _snapshotStatusHumbleObject = new SnapshotStatusHumbleObject(elasticClient, snapshotRequest); _snapshotStatusHumbleObject.Completed += StopTimer; _snapshotStatusHumbleObject.Error += StopTimer; }
public void OnNext_WhenDoneLessThanTotalForAllSnapshotShardStats() { var elastickClientMock = ElastickClientMock(SnapshotStatusFixture(1, 1, 2)); var sut = new SnapshotStatusHumbleObject(elastickClientMock.Object, new SnapshotRequest("repository", "snapshot")); sut.Next += (sender, args) => Assert.AreEqual(1, args.SnapshotStatusResponse.Snapshots.Count()); sut.Completed += (sender, args) => Assert.Fail("Can't complete"); sut.Error += (sender, args) => Assert.Fail(args.Exception.Message); sut.CheckStatus(); }
public SnapshotObservable(IOpenSearchClient opensearchClient, ISnapshotRequest snapshotRequest) { opensearchClient.ThrowIfNull(nameof(opensearchClient)); snapshotRequest.ThrowIfNull(nameof(snapshotRequest)); _opensearchClient = opensearchClient; _snapshotRequest = snapshotRequest; _snapshotRequest.RequestParameters.SetRequestMetaData(RequestMetaDataFactory.SnapshotHelperRequestMetaData()); _snapshotStatusHumbleObject = new SnapshotStatusHumbleObject(opensearchClient, snapshotRequest); _snapshotStatusHumbleObject.Completed += StopTimer; _snapshotStatusHumbleObject.Error += StopTimer; }
public void OnCompleted_WhenDoneEqualsToTotalForAllSnapshotShardStats() { var elastickClientMock = ElastickClientMock(SnapshotStatusFixture(1, 2, 2)); var sut = new SnapshotStatusHumbleObject(elastickClientMock.Object, new SnapshotRequest("repository", "snapshot")); sut.Next += (sender, args) => Assert.Fail(); sut.Completed += (sender, args) => Assert.NotNull(args.SnapshotStatusResponse); sut.Error += (sender, args) => Assert.Fail(args.Exception.Message); sut.CheckStatus(); }
public void ShouldCallSnapshotStatus() { var elastickClientMock = new Mock <IElasticClient>(); var sut = new SnapshotStatusHumbleObject(elastickClientMock.Object, new SnapshotRequest("repository", "snapshot")); sut.CheckStatus(); elastickClientMock.Verify(x => x .SnapshotStatus( It.Is <ISnapshotStatusRequest>( request => request.Repository == "repository" && request.Snapshot == "snapshot")), Times.AtLeastOnce); }
public void SnapshotStatusResponseInvalid_Exception() { var elastickClientMock = new Mock <IElasticClient>(); var snapshotStatusResponseMock = new Mock <ISnapshotStatusResponse>(); snapshotStatusResponseMock.Setup(x => x.IsValid).Returns(false); elastickClientMock.Setup( x => x.SnapshotStatus(It.IsAny <ISnapshotStatusRequest>())) .Returns(() => snapshotStatusResponseMock.Object); var sut = new SnapshotStatusHumbleObject(elastickClientMock.Object, new SnapshotRequest("repository", "snapshot")); sut.Next += (sender, args) => Assert.Fail(""); sut.Completed += (sender, args) => Assert.Fail("Can't complete"); sut.Error += (sender, args) => { throw args.Exception; }; sut.CheckStatus(); }
public void OnNext_WhenDoneLessThanTotalForAtLeastOneSnapshotShardStats() { var snapshotStatusFixture = SnapshotStatusFixture(1, 1, 2).ToList(); snapshotStatusFixture.Insert(1, new SnapshotStatusWrapper(new SnapshotShardsStatsWrapper(2, 2))); var elastickClientMock = ElastickClientMock(snapshotStatusFixture); var sut = new SnapshotStatusHumbleObject(elastickClientMock.Object, new SnapshotRequest("repository", "snapshot")); sut.Next += (sender, args) => Assert.AreEqual(2, args.SnapshotStatusResponse.Snapshots.Count()); sut.Completed += (sender, args) => Assert.Fail("Can't complete"); sut.Error += (sender, args) => Assert.Fail(args.Exception.Message); sut.CheckStatus(); }
public void ShouldCallSnapshotStatus() { var elastickClientMock = new Mock<IElasticClient>(); var sut = new SnapshotStatusHumbleObject(elastickClientMock.Object, new SnapshotRequest("repository", "snapshot")); sut.CheckStatus(); elastickClientMock.Verify(x => x .SnapshotStatus( It.Is<ISnapshotStatusRequest>( request => request.Repository == "repository" && request.Snapshot == "snapshot")), Times.AtLeastOnce); }
public void SnapshotStatusResponseInvalid_Exception() { var elastickClientMock = new Mock<IElasticClient>(); var snapshotStatusResponseMock = new Mock<ISnapshotStatusResponse>(); snapshotStatusResponseMock.Setup(x => x.IsValid).Returns(false); elastickClientMock.Setup( x => x.SnapshotStatus(It.IsAny<ISnapshotStatusRequest>())) .Returns(() => snapshotStatusResponseMock.Object); var sut = new SnapshotStatusHumbleObject(elastickClientMock.Object, new SnapshotRequest("repository", "snapshot")); sut.Next += (sender, args) => Assert.Fail(""); sut.Completed += (sender, args) => Assert.Fail("Can't complete"); sut.Error += (sender, args) => { throw args.Exception; }; sut.CheckStatus(); }