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