Skip to content

Commit 84d7831

Browse files
authored
fix: change rpc url in tests (#37)
* tests(superalloy): use polygon instead of furnace rpc * tests(superalloy): decrease polygon polling interval * tests(superalloy): add env variable support for RPC urls * tests(superalloy): increase flaky test retries
1 parent 2dab2c7 commit 84d7831

2 files changed

Lines changed: 18 additions & 17 deletions

File tree

.config/nextest.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# 1 retry for test_watch_block_numbers which may fail once depending on when the blocks are fetched
22
[[profile.default.overrides]]
3-
filter = 'package(superalloy) & test(multi_provider::tests::test_watch_block_numbers)'
4-
retries = 1
3+
filter = 'package(superalloy) & (test(multi_provider::tests::test_watch_block_numbers) | test(provider::tests::watch_block_numbers_http))'
4+
retries = 3

superalloy/src/provider.rs

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,13 @@ mod tests {
139139
use super::*;
140140
use alloy::providers::Provider;
141141

142-
const FURNACE_URL: &str = "https://api.furnace.dcipher.network/";
143-
const ETHEREUM_MAINNET_WS_URL: &str = "wss://mainnet.gateway.tenderly.co";
142+
static POLYGON_RPC_URL: std::sync::LazyLock<String> = std::sync::LazyLock::new(|| {
143+
std::env::var("POLYGON_RPC_URL").unwrap_or_else(|_| "https://1rpc.io/matic".to_owned())
144+
});
145+
static ETHEREUM_MAINNET_WS_URL: std::sync::LazyLock<String> = std::sync::LazyLock::new(|| {
146+
std::env::var("ETHEREUM_MAINNET_URL")
147+
.unwrap_or_else(|_| "wss://mainnet.gateway.tenderly.co".to_owned())
148+
});
144149

145150
#[tokio::test]
146151
async fn create_provider() {
@@ -149,16 +154,12 @@ mod tests {
149154
backoff: Duration::from_millis(500),
150155
};
151156

152-
let filecoin_calibnet_url = FURNACE_URL.parse().unwrap();
153-
let filecoin_calibnet_chainid = 64630;
154-
let filecoin_calibnet_provider =
155-
create_provider_with_retry(filecoin_calibnet_url, retry_strategy)
156-
.await
157-
.unwrap();
158-
assert_eq!(
159-
filecoin_calibnet_provider.get_chain_id().await.unwrap(),
160-
filecoin_calibnet_chainid
161-
);
157+
let polygon_rpc = POLYGON_RPC_URL.parse().unwrap();
158+
let polygon_chain_id = 137;
159+
let polygon = create_provider_with_retry(polygon_rpc, retry_strategy)
160+
.await
161+
.unwrap();
162+
assert_eq!(polygon.get_chain_id().await.unwrap(), polygon_chain_id);
162163

163164
let ethereum_mainnet_url = ETHEREUM_MAINNET_WS_URL.parse().unwrap();
164165
let ethereum_mainnet_chainid = 1;
@@ -208,13 +209,13 @@ mod tests {
208209
backoff: Duration::from_millis(500),
209210
};
210211

211-
let furnace_url = FURNACE_URL.parse().unwrap();
212-
let furnace_provider = create_provider_with_retry(furnace_url, retry_strategy)
212+
let polygon_url = POLYGON_RPC_URL.parse().unwrap();
213+
let polygon_provider = create_provider_with_retry(polygon_url, retry_strategy)
213214
.await
214215
.unwrap();
215216

216217
let mut block_number_stream =
217-
watch_block_numbers(&furnace_provider, Some(Duration::from_secs(2)))
218+
watch_block_numbers(&polygon_provider, Some(Duration::from_millis(200)))
218219
.await
219220
.unwrap();
220221
let curr_block = block_number_stream.next().await.unwrap().unwrap();

0 commit comments

Comments
 (0)