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);
        }
Esempio n. 2
0
            /// <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);
            }
Esempio n. 3
0
        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"));
        }
Esempio n. 4
0
            /// <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;
                }
            }