mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-24 17:07:58 +00:00
testing: Prepare light client testing with substrate binary and add subxt-test macro (#1507)
* testing: Add long running light client flag and cfg aliases
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Expose clients depending on feature flags
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* subxt: Use unstable backend for light client
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Disable flaky lightclient tests
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* ci: Add long runnnig step
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Revert "subxt: Use unstable backend for light client"
This reverts commit ea6f3cc58b.
* ci: Long running tests for 60 mins
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* ci: Use 16 cores for light-client testing
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* ci: Isolate light-client testing to save CI minutes
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Retry on Tx::Dropped for lightclinet only
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Wait for more blocks for the lightclient init
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* subxt: Use unstable backend for light client
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Disable legacy RPC tests
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Disable sudo and contracts tests
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Retry constructing lightclient on read-proof errors
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Disable tx dynamic test
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* proc-macro: Timeout for tests
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Add timeout 800 seconds
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* proc-macro/tests: Adjust subxt-test proc-macro
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* proc-macro: Rename crate to subxt-test-proc-macro
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Use default subxt-proc-macro timeout
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* light-client: Remove println
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* subxt: Remove tokio as dependency, use it only for testing
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Chagne default timeout to 6 seconds
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* proc-macro: Add env timeout variable
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* ci: Add subxt env var for controling test timeouts
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* tests/tx-retries: Retry on `Non node available` error
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Use unstable backend for testing lightclient
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Remove old lightclient object
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Adjust for the new interface
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* backend/rpc: Allow older version of the initialized event
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* rpc/tests: Check initialized decodes correctly
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* ci: Reset workflow
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Apply cargo fmt
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Remove unused dep
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Remove gitmerge old file
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Remove unused dep
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* rename proc-macro to subxt-test-macro
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* tests: Remove txretries for lightclient
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* tests: Wait for 5 blocks for the lightclient full testing suite
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* tests: Group imports
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* macro: Rename const value
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
---------
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
This commit is contained in:
@@ -2,17 +2,29 @@
|
||||
// This file is dual-licensed as Apache-2.0 or GPL-3.0.
|
||||
// see LICENSE for license details.
|
||||
|
||||
use crate::{test_context, utils::node_runtime};
|
||||
use crate::{subxt_test, test_context};
|
||||
use codec::{Compact, Encode};
|
||||
use futures::StreamExt;
|
||||
use subxt::config::signed_extensions::{ChargeAssetTxPayment, CheckMortality, CheckNonce};
|
||||
use subxt::config::DefaultExtrinsicParamsBuilder;
|
||||
use subxt::config::SubstrateConfig;
|
||||
use subxt::utils::Era;
|
||||
use subxt_metadata::Metadata;
|
||||
|
||||
#[cfg(fullclient)]
|
||||
use crate::utils::node_runtime;
|
||||
|
||||
#[cfg(fullclient)]
|
||||
use subxt::{
|
||||
config::{
|
||||
signed_extensions::{ChargeAssetTxPayment, CheckMortality, CheckNonce},
|
||||
DefaultExtrinsicParamsBuilder, SubstrateConfig,
|
||||
},
|
||||
utils::Era,
|
||||
};
|
||||
|
||||
#[cfg(fullclient)]
|
||||
use subxt_signer::sr25519::dev;
|
||||
|
||||
#[tokio::test]
|
||||
use subxt_metadata::Metadata;
|
||||
|
||||
#[cfg(fullclient)]
|
||||
#[subxt_test]
|
||||
async fn block_subscriptions_are_consistent_with_eachother() -> Result<(), subxt::Error> {
|
||||
let ctx = test_context().await;
|
||||
let api = ctx.client();
|
||||
@@ -76,7 +88,7 @@ async fn block_subscriptions_are_consistent_with_eachother() -> Result<(), subxt
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
#[subxt_test]
|
||||
async fn finalized_headers_subscription() -> Result<(), subxt::Error> {
|
||||
let ctx = test_context().await;
|
||||
let api = ctx.client();
|
||||
@@ -93,7 +105,7 @@ async fn finalized_headers_subscription() -> Result<(), subxt::Error> {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
#[subxt_test]
|
||||
async fn missing_block_headers_will_be_filled_in() -> Result<(), subxt::Error> {
|
||||
use subxt::backend::legacy;
|
||||
|
||||
@@ -138,7 +150,7 @@ async fn missing_block_headers_will_be_filled_in() -> Result<(), subxt::Error> {
|
||||
}
|
||||
|
||||
// Check that we can subscribe to non-finalized blocks.
|
||||
#[tokio::test]
|
||||
#[subxt_test]
|
||||
async fn runtime_api_call() -> Result<(), subxt::Error> {
|
||||
let ctx = test_context().await;
|
||||
let api = ctx.client();
|
||||
@@ -163,7 +175,8 @@ async fn runtime_api_call() -> Result<(), subxt::Error> {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
#[cfg(fullclient)]
|
||||
#[subxt_test]
|
||||
async fn fetch_block_and_decode_extrinsic_details() {
|
||||
let ctx = test_context().await;
|
||||
let api = ctx.client();
|
||||
@@ -232,7 +245,8 @@ async fn fetch_block_and_decode_extrinsic_details() {
|
||||
assert!(tx.is_signed());
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
#[cfg(fullclient)]
|
||||
#[subxt_test]
|
||||
async fn decode_signed_extensions_from_blocks() {
|
||||
let ctx = test_context().await;
|
||||
let api = ctx.client();
|
||||
|
||||
Reference in New Issue
Block a user