This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a commit to branch ignite-14972
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/ignite-14972 by this push:
     new 91229e6f6 wip fakes
91229e6f6 is described below

commit 91229e6f6b070155efa2bac48682474bb15203d8
Author: Pavel Tupitsyn <[email protected]>
AuthorDate: Mon May 30 20:17:18 2022 +0300

    wip fakes
---
 .../ignite/client/fakes/FakeAsyncResultSet.java    | 48 ++++++++++++++++++++--
 .../apache/ignite/client/fakes/FakeIgniteSql.java  |  2 +-
 2 files changed, 46 insertions(+), 4 deletions(-)

diff --git 
a/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeAsyncResultSet.java
 
b/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeAsyncResultSet.java
index 5e496dbda..8532c69ac 100644
--- 
a/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeAsyncResultSet.java
+++ 
b/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeAsyncResultSet.java
@@ -17,6 +17,10 @@
 
 package org.apache.ignite.client.fakes;
 
+import static org.mockito.Mockito.mock;
+
+import java.util.ArrayList;
+import java.util.List;
 import java.util.concurrent.CompletionStage;
 import org.apache.ignite.sql.ResultSetMetadata;
 import org.apache.ignite.sql.Session;
@@ -25,60 +29,98 @@ import org.apache.ignite.sql.Statement;
 import org.apache.ignite.sql.async.AsyncResultSet;
 import org.apache.ignite.tx.Transaction;
 import org.jetbrains.annotations.Nullable;
+import org.mockito.Mockito;
 
 public class FakeAsyncResultSet implements AsyncResultSet {
+    /** */
     private final Session session;
+
+    /** */
     private final Transaction transaction;
+
+    /** */
     private final Statement statement;
+
+    /** */
     private final Object[] arguments;
 
+    /** */
+    private final List<SqlRow> rows;
+
+    /**
+     * Constructor.
+     *
+     * @param session Session.
+     * @param transaction Transaction.
+     * @param statement Statement.
+     * @param arguments Arguments.
+     */
     public FakeAsyncResultSet(Session session, Transaction transaction, 
Statement statement, Object[] arguments) {
+        assert session != null;
+        assert statement != null;
+
         this.session = session;
         this.transaction = transaction;
         this.statement = statement;
         this.arguments = arguments;
+
+        var row = mock(SqlRow.class);
+        Mockito.when(row.value(Mockito.anyInt())).thenReturn("1");
+
+        rows = new ArrayList<>();
+        rows.add(row);
     }
 
+    /** {@inheritDoc} */
     @Override
     public @Nullable ResultSetMetadata metadata() {
         return null;
     }
 
+    /** {@inheritDoc} */
     @Override
     public boolean hasRowSet() {
-        return false;
+        return true;
     }
 
+    /** {@inheritDoc} */
     @Override
     public long affectedRows() {
         return 0;
     }
 
+    /** {@inheritDoc} */
     @Override
     public boolean wasApplied() {
         return false;
     }
 
+    /** {@inheritDoc} */
     @Override
     public Iterable<SqlRow> currentPage() {
-        return null;
+        //noinspection AssignmentOrReturnOfFieldWithMutableType
+        return rows;
     }
 
+    /** {@inheritDoc} */
     @Override
     public int currentPageSize() {
-        return 0;
+        return rows.size();
     }
 
+    /** {@inheritDoc} */
     @Override
     public CompletionStage<? extends AsyncResultSet> fetchNextPage() {
         return null;
     }
 
+    /** {@inheritDoc} */
     @Override
     public boolean hasMorePages() {
         return false;
     }
 
+    /** {@inheritDoc} */
     @Override
     public CompletionStage<Void> closeAsync() {
         return null;
diff --git 
a/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeIgniteSql.java
 
b/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeIgniteSql.java
index 2ef4654f9..2cdae21ec 100644
--- 
a/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeIgniteSql.java
+++ 
b/modules/client/src/test/java/org/apache/ignite/client/fakes/FakeIgniteSql.java
@@ -35,7 +35,7 @@ public class FakeIgniteSql implements IgniteSql {
 
     @Override
     public SessionBuilder sessionBuilder() {
-        return null;
+        return new FakeSessionBuilder();
     }
 
     @Override

Reply via email to