public void TestMoveNextWithOneNextPage() { var ms = new MemoryStream(); var valueHolderList = new List <ValueHolder> { new ValueHolder { IonBinary = ms, IonText = "ionText" } }; var fetchPageResult = new FetchPageResult { Page = new Page { NextPageToken = null, Values = valueHolderList } }; mockSession.Setup(m => m.FetchPage(It.IsAny <string>(), It.IsAny <string>())) .Returns(fetchPageResult); var results = result.GetEnumerator(); int counter = 0; while (results.MoveNext()) { counter++; } Assert.AreEqual(2, counter); mockSession.Verify(m => m.FetchPage(It.IsAny <string>(), It.IsAny <string>()), Times.Once); }
/// <summary> /// Fetch the next page from the session. /// </summary> private void FetchPage() { FetchPageResult pageResult = this.session.FetchPage(this.txnId, this.nextPageToken); this.currentEnumerator = pageResult.Page.Values.GetEnumerator(); this.nextPageToken = pageResult.Page.NextPageToken; this.UpdateMetrics(pageResult); }
public void TestFetchPageReturnsResponse() { var testFetchPageResult = new FetchPageResult { Page = new Page() }; var testFetchPageResponse = new SendCommandResponse { FetchPage = testFetchPageResult }; SetResponse(testFetchPageResponse); Assert.AreEqual(testFetchPageResult, session.FetchPage("txnId", "nextPageToken")); }
/// <summary> /// Update the metrics. /// </summary> private void UpdateMetrics(FetchPageResult pageResult) { if (pageResult.ConsumedIOs != null) { this.readIOs = this.readIOs == null ? pageResult.ConsumedIOs.ReadIOs : this.readIOs + pageResult.ConsumedIOs.ReadIOs; this.writeIOs = this.writeIOs == null ? pageResult.ConsumedIOs.WriteIOs : this.writeIOs + pageResult.ConsumedIOs.WriteIOs; } if (pageResult.TimingInformation != null) { this.processingTimeMilliseconds = this.processingTimeMilliseconds == null ? pageResult.TimingInformation.ProcessingTimeMilliseconds : this.processingTimeMilliseconds + pageResult.TimingInformation.ProcessingTimeMilliseconds; } }