Closed lealobanov closed 2 weeks ago
The recent changes involve minor formatting adjustments, primarily the removal of unnecessary blank lines across several Java and Kotlin classes related to the Flow Access API connectors and their corresponding tests. Additionally, new Kotlin classes and tests have been introduced to enhance functionality for accessing collections and execution data within the Flow ecosystem. These updates ensure better code readability and maintainability without altering existing logic or behavior.
Files | Change Summary |
---|---|
java-example/src/main/java/org/onflow/examples/java/getAccount/GetAccountAccessAPIConnector.java , java-example/src/main/java/org/onflow/examples/java/getBlock/GetBlockAccessAPIConnector.java , java-example/src/main/java/org/onflow/examples/java/getNetworkParams/GetNetworkParametersAccessAPIConnector.java , java-example/src/main/java/org/onflow/examples/java/getTransaction/GetTransactionAccessAPIConnector.java , java-example/src/test/java/org/onflow/examples/java/getBlock/GetBlockAccessAPIConnectorTest.java , java-example/src/test/java/org/onflow/examples/java/getNetworkParams/GetNetworkParametersAccessAPIConnectorTest.java , java-example/src/test/java/org/onflow/examples/java/getTransaction/GetTransactionAccessAPIConnectorTest.java |
Minor formatting changes, specifically the removal of blank lines. These adjustments do not impact functionality or logic. |
java-example/src/main/java/org/onflow/examples/java/getCollection/GetCollectionAccessAPIConnector.java |
New file introducing GetCollectionAccessAPIConnector , enabling access to Flow collections via the Flow Access API, including a method to fetch collections by ID and handle API responses effectively. |
java-example/src/test/java/org/onflow/examples/java/getCollection/GetCollectionAccessAPIConnectorTest.java |
New test file for GetCollectionAccessAPIConnector , using JUnit to validate functionality by testing retrieval of collections by ID, ensuring responses are correctly handled and verified. |
kotlin-example/src/main/kotlin/org/onflow/examples/kotlin/getCollection/GetCollectionAccessAPIConnector.kt |
New file defining GetCollectionAccessAPIConnector in Kotlin, facilitating collection retrieval from the Flow Access API with appropriate error handling for API responses. |
kotlin-example/src/main/kotlin/org/onflow/examples/kotlin/getExecutionData/GetExecutionDataAccessAPIConnector.kt |
New file introducing GetExecutionDataAccessAPIConnector , allowing retrieval of execution data based on block ID, with structured error handling for API interactions. |
kotlin-example/src/test/kotlin/org/onflow/examples/kotlin/getCollection/GetCollectionAccessAPIConnectorTest.kt |
New test file for GetCollectionAccessAPIConnector in Kotlin, ensuring the connector's functionality is validated through unit tests that assert correct behavior when fetching collections by ID. |
kotlin-example/src/test/kotlin/org/onflow/examples/kotlin/getExecutionData/GetExecutionDataAccessAPIConnectorTest.kt |
New test file for GetExecutionDataAccessAPIConnector , validating functionality in fetching execution data from the Flow API, with assertions to confirm expected behavior and data integrity. |
FlowAccessApi
interface for retrieving transactions and execution results by block ID, which aligns with the main PR's changes in API connectors.GetCollectionAccessAPIConnector
class provides functionality for accessing collections, which is relevant to the main PR's focus on API connectors.ExecuteScriptAccessAPIConnector
class enhances the ability to execute scripts, which may relate to the main PR's changes in API connectors that handle various interactions with the Flow blockchain.🐰In the meadow, bright and clear,
Code changes hop, bringing cheer!
Blank lines vanish, neat and spry,
New connectors wave as they fly.
Tests are crafted, all in line,
In Flow’s garden, code will shine! 🌼
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
53 files ±0 53 suites ±0 23s :stopwatch: ±0s 310 tests ±0 310 :heavy_check_mark: ±0 0 :zzz: ±0 0 :x: ±0
Results for commit bdebe650. ± Comparison against base commit bdebe650.
:recycle: This comment has been updated with latest results.
6 files ±0 6 suites ±0 2m 35s :stopwatch: ±0s 30 tests ±0 30 :heavy_check_mark: ±0 0 :zzz: ±0 0 :x: ±0
Results for commit bdebe650. ± Comparison against base commit bdebe650.
:recycle: This comment has been updated with latest results.
35 files 35 suites 6m 8s :stopwatch: 68 tests 68 :heavy_check_mark: 0 :zzz: 0 :x:
Results for commit b5fdec1e.
:recycle: This comment has been updated with latest results.
1 files 1 suites 7s :stopwatch: 1 tests 1 :heavy_check_mark: 0 :zzz: 0 :x:
Results for commit b5fdec1e.
:recycle: This comment has been updated with latest results.
When I run the build locally I get 2 test failures. There's also a linting failure in CI whcih I don't seem to get locally which is odd.
GetCollectionAccessAPIConnectorTest > canFetchCollectionById() FAILED
java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:100)
at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:106)
at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:302)
at java.base/java.util.Objects.checkIndex(Objects.java:385)
at java.base/java.util.ArrayList.get(ArrayList.java:427)
at org.onflow.examples.java.getCollection.GetCollectionAccessAPIConnectorTest.setup(GetCollectionAccessAPIConnectorTest.java:29)
GetExecutionDataAccessAPIConnectorTest > canFetchExecutionDataByBlockId() FAILED
java.lang.RuntimeException: Failed to get execution result by block ID
at org.onflow.examples.java.getExecutionData.GetExecutionDataAccessAPIConnector.getExecutionDataByBlockId(GetExecutionDataAccessAPIConnector.java:21)
at org.onflow.examples.java.getExecutionData.GetExecutionDataAccessAPIConnectorTest.canFetchExecutionDataByBlockId(GetExecutionDataAccessAPIConnectorTest.java:38)
Caused by:
io.grpc.StatusRuntimeException: UNAVAILABLE: Network closed for unknown reason
at app//io.grpc.stub.ClientCalls.toStatusRuntimeException(ClientCalls.java:262)
at app//io.grpc.stub.ClientCalls.getUnchecked(ClientCalls.java:243)
at app//io.grpc.stub.ClientCalls.blockingUnaryCall(ClientCalls.java:156)
at app//org.onflow.protobuf.access.AccessAPIGrpc$AccessAPIBlockingStub.getExecutionResultByID(AccessAPIGrpc.java:3052)
at app//org.onflow.flow.sdk.impl.FlowAccessApiImpl.getExecutionResultByBlockId(FlowAccessApiImpl.kt:374)
at app//org.onflow.examples.java.getExecutionData.GetExecutionDataAccessAPIConnector.getExecutionDataByBlockId(GetExecutionDataAccessAPIConnector.java:16)
... 1 more
Yup, getting the same issues locally, working on debugging these. The GetCollectionAccessAPIConnectorTest > canFetchCollectionById() test is failing from the parent branch
Description
This PR is now up to date, however it looks like emulator is still missing the
getExecutionResultByBlockId
method. Will follow up with the emulator team.For contributor use:
master
branchFiles changed
in the Github PR explorerSummary by CodeRabbit
Summary by CodeRabbit
New Features
GetCollectionAccessAPIConnector
class to facilitate collection retrieval from the Flow Access API.GetExecutionDataAccessAPIConnector
class for fetching execution data based on block IDs.Tests
GetCollectionAccessAPIConnector
andGetExecutionDataAccessAPIConnector
to validate their functionalities in a simulated environment.Bug Fixes