Migrate candlestick tests to bitcoincash 0.32 API
The candlestick module was authored against bitcoincash 0.29 before master upgraded to 0.32. Adapt the rebased test files to the new API: - Hash constructors: from_inner -> from_byte_array - sqlx connection passing: &mut *conn -> &mut conn - TokenID hex display: token.to_hex() -> token.to_string() (drop the now-unused bitcoin_hashes::hex::ToHex import) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
4a16fa0ffe
commit
51cb5d788c
2 changed files with 84 additions and 85 deletions
|
|
@ -52,9 +52,9 @@ async fn insert_trade_at(
|
|||
sats_delta: i64,
|
||||
token_delta: i64,
|
||||
) {
|
||||
let txid = Txid::from_inner([txid_byte; 32]);
|
||||
let utxo = OutPointHash::from_inner([txid_byte; 32]);
|
||||
let pool_hash = OutPointHash::from_inner([txid_byte.wrapping_add(0x80); 32]);
|
||||
let txid = Txid::from_byte_array([txid_byte; 32]);
|
||||
let utxo = OutPointHash::from_byte_array([txid_byte; 32]);
|
||||
let pool_hash = OutPointHash::from_byte_array([txid_byte.wrapping_add(0x80); 32]);
|
||||
let block = BlockHash::all_zeros();
|
||||
|
||||
let cauldron = dummy_cauldron(
|
||||
|
|
@ -89,7 +89,7 @@ async fn insert_trade_at(
|
|||
#[tokio::test]
|
||||
async fn test_fetch_last_close_before_no_trades() {
|
||||
let db = mock_db_pool(setup_db).await;
|
||||
let token = TokenID::from_inner([0xAA; 32]);
|
||||
let token = TokenID::from_byte_array([0xAA; 32]);
|
||||
let token_blob = token.to_blob();
|
||||
|
||||
let result = super::fetch_last_close_before(&db.cauldron_r, &token_blob, 2_000_000_000)
|
||||
|
|
@ -101,7 +101,7 @@ async fn test_fetch_last_close_before_no_trades() {
|
|||
#[tokio::test]
|
||||
async fn test_fetch_last_close_before_only_future_trades() {
|
||||
let db = mock_db_pool(setup_db).await;
|
||||
let token = TokenID::from_inner([0xAB; 32]);
|
||||
let token = TokenID::from_byte_array([0xAB; 32]);
|
||||
let token_blob = token.to_blob();
|
||||
|
||||
let mut conn = db.cauldron_w.acquire().await.unwrap();
|
||||
|
|
@ -116,7 +116,7 @@ async fn test_fetch_last_close_before_only_future_trades() {
|
|||
#[tokio::test]
|
||||
async fn test_fetch_last_close_before_returns_most_recent() {
|
||||
let db = mock_db_pool(setup_db).await;
|
||||
let token = TokenID::from_inner([0xAC; 32]);
|
||||
let token = TokenID::from_byte_array([0xAC; 32]);
|
||||
let token_blob = token.to_blob();
|
||||
|
||||
let mut conn = db.cauldron_w.acquire().await.unwrap();
|
||||
|
|
@ -138,7 +138,7 @@ async fn test_fetch_last_close_before_returns_most_recent() {
|
|||
#[tokio::test]
|
||||
async fn test_fetch_last_close_before_boundary_excluded() {
|
||||
let db = mock_db_pool(setup_db).await;
|
||||
let token = TokenID::from_inner([0xAD; 32]);
|
||||
let token = TokenID::from_byte_array([0xAD; 32]);
|
||||
let token_blob = token.to_blob();
|
||||
|
||||
let mut conn = db.cauldron_w.acquire().await.unwrap();
|
||||
|
|
@ -156,7 +156,7 @@ async fn test_fetch_last_close_before_boundary_excluded() {
|
|||
#[tokio::test]
|
||||
async fn test_fetch_last_close_before_skips_net_zero_token_trades() {
|
||||
let db = mock_db_pool(setup_db).await;
|
||||
let token = TokenID::from_inner([0xAE; 32]);
|
||||
let token = TokenID::from_byte_array([0xAE; 32]);
|
||||
let token_blob = token.to_blob();
|
||||
|
||||
let mut conn = db.cauldron_w.acquire().await.unwrap();
|
||||
|
|
@ -180,8 +180,8 @@ async fn test_fetch_last_close_before_skips_net_zero_token_trades() {
|
|||
#[tokio::test]
|
||||
async fn test_fetch_last_close_before_token_isolation() {
|
||||
let db = mock_db_pool(setup_db).await;
|
||||
let token_a = TokenID::from_inner([0xAF; 32]);
|
||||
let token_b = TokenID::from_inner([0xBF; 32]);
|
||||
let token_a = TokenID::from_byte_array([0xAF; 32]);
|
||||
let token_b = TokenID::from_byte_array([0xBF; 32]);
|
||||
let token_a_blob = token_a.to_blob();
|
||||
|
||||
let mut conn = db.cauldron_w.acquire().await.unwrap();
|
||||
|
|
|
|||
|
|
@ -13,7 +13,6 @@ use crate::utiltest::mock_db_pool;
|
|||
use crate::OhlcvState;
|
||||
|
||||
use crate::timeutil::time_now;
|
||||
use bitcoin_hashes::hex::ToHex;
|
||||
use bitcoin_hashes::Hash;
|
||||
use bitcoincash::{BlockHash, PubkeyHash, TokenID, Txid};
|
||||
use riftenlabs_defi::{cauldron::ParsedContract, chainutil::OutPointHash};
|
||||
|
|
@ -74,58 +73,58 @@ async fn setup_mock_db(pool: sqlx::SqlitePool) {
|
|||
let token_zero = TokenID::all_zeros();
|
||||
let pkh_zero = PubkeyHash::all_zeros();
|
||||
|
||||
let txid1 = Txid::from_inner([0xf1; 32]);
|
||||
let txid2 = Txid::from_inner([0xf2; 32]);
|
||||
let txid3 = Txid::from_inner([0xf3; 32]);
|
||||
let txid4 = Txid::from_inner([0xf4; 32]);
|
||||
let utxo1 = OutPointHash::from_inner([0xe1; 32]);
|
||||
let utxo2 = OutPointHash::from_inner([0xe2; 32]);
|
||||
let utxo3 = OutPointHash::from_inner([0xe3; 32]);
|
||||
let utxo4 = OutPointHash::from_inner([0xe4; 32]);
|
||||
let txid1 = Txid::from_byte_array([0xf1; 32]);
|
||||
let txid2 = Txid::from_byte_array([0xf2; 32]);
|
||||
let txid3 = Txid::from_byte_array([0xf3; 32]);
|
||||
let txid4 = Txid::from_byte_array([0xf4; 32]);
|
||||
let utxo1 = OutPointHash::from_byte_array([0xe1; 32]);
|
||||
let utxo2 = OutPointHash::from_byte_array([0xe2; 32]);
|
||||
let utxo3 = OutPointHash::from_byte_array([0xe3; 32]);
|
||||
let utxo4 = OutPointHash::from_byte_array([0xe4; 32]);
|
||||
|
||||
let cauldron1 = dummy_cauldron(&txid1, &utxo1, &token_zero, 80_000, 2_000, &pkh_zero);
|
||||
let cauldron2 = dummy_cauldron(&txid2, &utxo2, &token_zero, 120_000, 2_000, &pkh_zero);
|
||||
let cauldron3 = dummy_cauldron(&txid3, &utxo3, &token_zero, 160_000, 2_000, &pkh_zero);
|
||||
let cauldron4 = dummy_cauldron(&txid4, &utxo4, &token_zero, 200_000, 2_000, &pkh_zero);
|
||||
|
||||
insert_utxo_funding(&mut *conn, &vec![cauldron1.clone()], &txid1)
|
||||
insert_utxo_funding(&mut conn, &vec![cauldron1.clone()], &txid1)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_utxo_funding(&mut *conn, &vec![cauldron2.clone()], &txid2)
|
||||
insert_utxo_funding(&mut conn, &vec![cauldron2.clone()], &txid2)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_utxo_funding(&mut *conn, &vec![cauldron3.clone()], &txid3)
|
||||
insert_utxo_funding(&mut conn, &vec![cauldron3.clone()], &txid3)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_utxo_funding(&mut *conn, &vec![cauldron4.clone()], &txid4)
|
||||
insert_utxo_funding(&mut conn, &vec![cauldron4.clone()], &txid4)
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
let block_zero = BlockHash::all_zeros();
|
||||
insert_mempool_tx(&mut *conn, &txid1, TIME_1).await.unwrap();
|
||||
insert_block_tx(&mut *conn, &txid1, &block_zero, TIME_1 as i64)
|
||||
insert_mempool_tx(&mut conn, &txid1, TIME_1).await.unwrap();
|
||||
insert_block_tx(&mut conn, &txid1, &block_zero, TIME_1 as i64)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_mempool_tx(&mut *conn, &txid2, TIME_2).await.unwrap();
|
||||
insert_block_tx(&mut *conn, &txid2, &block_zero, TIME_2 as i64)
|
||||
insert_mempool_tx(&mut conn, &txid2, TIME_2).await.unwrap();
|
||||
insert_block_tx(&mut conn, &txid2, &block_zero, TIME_2 as i64)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_mempool_tx(&mut *conn, &txid3, TIME_3).await.unwrap();
|
||||
insert_block_tx(&mut *conn, &txid3, &block_zero, TIME_3 as i64)
|
||||
insert_mempool_tx(&mut conn, &txid3, TIME_3).await.unwrap();
|
||||
insert_block_tx(&mut conn, &txid3, &block_zero, TIME_3 as i64)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_mempool_tx(&mut *conn, &txid4, TIME_4).await.unwrap();
|
||||
insert_block_tx(&mut *conn, &txid4, &block_zero, TIME_4 as i64)
|
||||
insert_mempool_tx(&mut conn, &txid4, TIME_4).await.unwrap();
|
||||
insert_block_tx(&mut conn, &txid4, &block_zero, TIME_4 as i64)
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
let pool1 = OutPointHash::from_inner([0x0a; 32]);
|
||||
let pool2 = OutPointHash::from_inner([0x0b; 32]);
|
||||
let pool3 = OutPointHash::from_inner([0x0c; 32]);
|
||||
let pool4 = OutPointHash::from_inner([0x0d; 32]);
|
||||
let pool1 = OutPointHash::from_byte_array([0x0a; 32]);
|
||||
let pool2 = OutPointHash::from_byte_array([0x0b; 32]);
|
||||
let pool3 = OutPointHash::from_byte_array([0x0c; 32]);
|
||||
let pool4 = OutPointHash::from_byte_array([0x0d; 32]);
|
||||
|
||||
pool::insert_pool_history_entry(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&pool1,
|
||||
&cauldron1,
|
||||
Some(TIME_1),
|
||||
|
|
@ -136,7 +135,7 @@ async fn setup_mock_db(pool: sqlx::SqlitePool) {
|
|||
.await
|
||||
.unwrap();
|
||||
pool::insert_pool_history_entry(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&pool2,
|
||||
&cauldron2,
|
||||
Some(TIME_2),
|
||||
|
|
@ -147,7 +146,7 @@ async fn setup_mock_db(pool: sqlx::SqlitePool) {
|
|||
.await
|
||||
.unwrap();
|
||||
pool::insert_pool_history_entry(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&pool3,
|
||||
&cauldron3,
|
||||
Some(TIME_3),
|
||||
|
|
@ -158,7 +157,7 @@ async fn setup_mock_db(pool: sqlx::SqlitePool) {
|
|||
.await
|
||||
.unwrap();
|
||||
pool::insert_pool_history_entry(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&pool4,
|
||||
&cauldron4,
|
||||
Some(TIME_4),
|
||||
|
|
@ -169,28 +168,28 @@ async fn setup_mock_db(pool: sqlx::SqlitePool) {
|
|||
.await
|
||||
.unwrap();
|
||||
|
||||
let token1 = TokenID::from_inner([0xda; 32]);
|
||||
let pkh1 = PubkeyHash::from_inner([0xca; 20]);
|
||||
let token1 = TokenID::from_byte_array([0xda; 32]);
|
||||
let pkh1 = PubkeyHash::from_byte_array([0xca; 20]);
|
||||
insert_new_pool(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&dummy_cauldron(&Txid::all_zeros(), &pool1, &token1, 0, 0, &pkh1),
|
||||
)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_new_pool(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&dummy_cauldron(&Txid::all_zeros(), &pool2, &token1, 0, 0, &pkh1),
|
||||
)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_new_pool(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&dummy_cauldron(&Txid::all_zeros(), &pool3, &token1, 0, 0, &pkh1),
|
||||
)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_new_pool(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&dummy_cauldron(&Txid::all_zeros(), &pool4, &token1, 0, 0, &pkh1),
|
||||
)
|
||||
.await
|
||||
|
|
@ -215,9 +214,9 @@ async fn insert_trade_at(
|
|||
sats_delta: i64,
|
||||
token_delta: i64,
|
||||
) {
|
||||
let txid = Txid::from_inner([txid_byte; 32]);
|
||||
let utxo = OutPointHash::from_inner([txid_byte; 32]);
|
||||
let pool_hash = OutPointHash::from_inner([txid_byte.wrapping_add(0x80); 32]);
|
||||
let txid = Txid::from_byte_array([txid_byte; 32]);
|
||||
let utxo = OutPointHash::from_byte_array([txid_byte; 32]);
|
||||
let pool_hash = OutPointHash::from_byte_array([txid_byte.wrapping_add(0x80); 32]);
|
||||
let block = BlockHash::all_zeros();
|
||||
|
||||
let cauldron = dummy_cauldron(
|
||||
|
|
@ -387,14 +386,14 @@ async fn test_single_swap_multiple_pools() {
|
|||
|
||||
let token_zero = TokenID::all_zeros();
|
||||
let pkh_zero = PubkeyHash::all_zeros();
|
||||
let txid_multi = Txid::from_inner([0xaa; 32]);
|
||||
let txid_multi = Txid::from_byte_array([0xaa; 32]);
|
||||
let block_zero = BlockHash::all_zeros();
|
||||
|
||||
let mut pools = Vec::new();
|
||||
let times = [TIME_1, TIME_2];
|
||||
for (i, &time) in times.iter().enumerate() {
|
||||
let utxo = OutPointHash::from_inner([0xe1 + i as u8; 32]);
|
||||
let pool_hash = OutPointHash::from_inner([0x0a + i as u8; 32]);
|
||||
let utxo = OutPointHash::from_byte_array([0xe1 + i as u8; 32]);
|
||||
let pool_hash = OutPointHash::from_byte_array([0x0a + i as u8; 32]);
|
||||
let cauldron = dummy_cauldron(
|
||||
&txid_multi,
|
||||
&utxo,
|
||||
|
|
@ -405,18 +404,18 @@ async fn test_single_swap_multiple_pools() {
|
|||
);
|
||||
pools.push(pool_hash);
|
||||
|
||||
insert_utxo_funding(&mut *conn, &vec![cauldron.clone()], &txid_multi)
|
||||
insert_utxo_funding(&mut conn, &vec![cauldron.clone()], &txid_multi)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_block_tx(&mut *conn, &txid_multi, &block_zero, time as i64)
|
||||
insert_block_tx(&mut conn, &txid_multi, &block_zero, time as i64)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_mempool_tx(&mut *conn, &txid_multi, time)
|
||||
insert_mempool_tx(&mut conn, &txid_multi, time)
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
pool::insert_pool_history_entry(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&pool_hash,
|
||||
&cauldron,
|
||||
Some(time),
|
||||
|
|
@ -428,11 +427,11 @@ async fn test_single_swap_multiple_pools() {
|
|||
.unwrap();
|
||||
}
|
||||
|
||||
let token1 = TokenID::from_inner([0xda; 32]);
|
||||
let pkh1 = PubkeyHash::from_inner([0xca; 20]);
|
||||
let token1 = TokenID::from_byte_array([0xda; 32]);
|
||||
let pkh1 = PubkeyHash::from_byte_array([0xca; 20]);
|
||||
for pool_hash in &pools {
|
||||
insert_new_pool(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&dummy_cauldron(&Txid::all_zeros(), pool_hash, &token1, 0, 0, &pkh1),
|
||||
)
|
||||
.await
|
||||
|
|
@ -491,14 +490,14 @@ async fn test_candle_carries_price_when_net_zero_tokens_but_has_volume() {
|
|||
let block_zero = BlockHash::all_zeros();
|
||||
|
||||
// Two pools (identities)
|
||||
let pool_a = OutPointHash::from_inner([0x1a; 32]);
|
||||
let pool_b = OutPointHash::from_inner([0x1b; 32]);
|
||||
let pool_a = OutPointHash::from_byte_array([0x1a; 32]);
|
||||
let pool_b = OutPointHash::from_byte_array([0x1b; 32]);
|
||||
|
||||
// Register pools in `pool` table
|
||||
let token1 = TokenID::from_inner([0xda; 32]);
|
||||
let pkh1 = PubkeyHash::from_inner([0xca; 20]);
|
||||
let token1 = TokenID::from_byte_array([0xda; 32]);
|
||||
let pkh1 = PubkeyHash::from_byte_array([0xca; 20]);
|
||||
insert_new_pool(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&ParsedContract {
|
||||
pkh: pkh1,
|
||||
is_withdrawn: false,
|
||||
|
|
@ -514,7 +513,7 @@ async fn test_candle_carries_price_when_net_zero_tokens_but_has_volume() {
|
|||
.await
|
||||
.unwrap();
|
||||
insert_new_pool(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&ParsedContract {
|
||||
pkh: pkh1,
|
||||
is_withdrawn: false,
|
||||
|
|
@ -536,8 +535,8 @@ async fn test_candle_carries_price_when_net_zero_tokens_but_has_volume() {
|
|||
let t1: u64 = t0 + step;
|
||||
|
||||
// -------- Candle #1 (normal priceable trade) --------
|
||||
let txid_price = Txid::from_inner([0x90; 32]);
|
||||
let utxo_p = OutPointHash::from_inner([0x21; 32]);
|
||||
let txid_price = Txid::from_byte_array([0x90; 32]);
|
||||
let utxo_p = OutPointHash::from_byte_array([0x21; 32]);
|
||||
let cauldron_p = ParsedContract {
|
||||
pkh: pkh_zero,
|
||||
is_withdrawn: false,
|
||||
|
|
@ -549,18 +548,18 @@ async fn test_candle_carries_price_when_net_zero_tokens_but_has_volume() {
|
|||
sats: Some(0),
|
||||
token_amount: Some(0),
|
||||
};
|
||||
insert_utxo_funding(&mut *conn, &vec![cauldron_p.clone()], &txid_price)
|
||||
insert_utxo_funding(&mut conn, &vec![cauldron_p.clone()], &txid_price)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_block_tx(&mut *conn, &txid_price, &block_zero, t0 as i64)
|
||||
insert_block_tx(&mut conn, &txid_price, &block_zero, t0 as i64)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_mempool_tx(&mut *conn, &txid_price, t0)
|
||||
insert_mempool_tx(&mut conn, &txid_price, t0)
|
||||
.await
|
||||
.unwrap();
|
||||
// sats_delta=+10_000, token_delta=+200 -> price = 10000/200 = 50
|
||||
pool::insert_pool_history_entry(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&pool_a,
|
||||
&cauldron_p,
|
||||
Some(t0),
|
||||
|
|
@ -572,9 +571,9 @@ async fn test_candle_carries_price_when_net_zero_tokens_but_has_volume() {
|
|||
.unwrap();
|
||||
|
||||
// -------- Candle #2 (net zero tokens but non-zero volume) --------
|
||||
let txid_net0 = Txid::from_inner([0x91; 32]);
|
||||
let utxo_a1 = OutPointHash::from_inner([0x22; 32]);
|
||||
let utxo_b1 = OutPointHash::from_inner([0x23; 32]);
|
||||
let txid_net0 = Txid::from_byte_array([0x91; 32]);
|
||||
let utxo_a1 = OutPointHash::from_byte_array([0x22; 32]);
|
||||
let utxo_b1 = OutPointHash::from_byte_array([0x23; 32]);
|
||||
|
||||
let ca_a1 = ParsedContract {
|
||||
pkh: pkh_zero,
|
||||
|
|
@ -593,19 +592,19 @@ async fn test_candle_carries_price_when_net_zero_tokens_but_has_volume() {
|
|||
..ca_a1
|
||||
};
|
||||
|
||||
insert_utxo_funding(&mut *conn, &vec![ca_a1.clone()], &txid_net0)
|
||||
insert_utxo_funding(&mut conn, &vec![ca_a1.clone()], &txid_net0)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_utxo_funding(&mut *conn, &vec![ca_b1.clone()], &txid_net0)
|
||||
insert_utxo_funding(&mut conn, &vec![ca_b1.clone()], &txid_net0)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_block_tx(&mut *conn, &txid_net0, &block_zero, t1 as i64)
|
||||
insert_block_tx(&mut conn, &txid_net0, &block_zero, t1 as i64)
|
||||
.await
|
||||
.unwrap();
|
||||
insert_mempool_tx(&mut *conn, &txid_net0, t1).await.unwrap();
|
||||
insert_mempool_tx(&mut conn, &txid_net0, t1).await.unwrap();
|
||||
|
||||
pool::insert_pool_history_entry(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&pool_a,
|
||||
&ca_a1,
|
||||
Some(t1),
|
||||
|
|
@ -617,7 +616,7 @@ async fn test_candle_carries_price_when_net_zero_tokens_but_has_volume() {
|
|||
.unwrap();
|
||||
// Opposite deltas within the same tx
|
||||
pool::insert_pool_history_entry(
|
||||
&mut *conn,
|
||||
&mut conn,
|
||||
&pool_b,
|
||||
&ca_b1,
|
||||
Some(t1),
|
||||
|
|
@ -872,7 +871,7 @@ async fn test_ohlcv_skipped_for_non_aligned_start() {
|
|||
/// all candles are flat gap-fill at the prior close price.
|
||||
#[rocket::async_test]
|
||||
async fn test_raw_path_seeded_gap_fill_no_in_window_trades() {
|
||||
let token = TokenID::from_inner([0xBA; 32]);
|
||||
let token = TokenID::from_byte_array([0xBA; 32]);
|
||||
|
||||
let token_copy = token;
|
||||
let db = mock_db_pool(move |pool: sqlx::SqlitePool| async move {
|
||||
|
|
@ -891,7 +890,7 @@ async fn test_raw_path_seeded_gap_fill_no_in_window_trades() {
|
|||
let resp = client
|
||||
.get(format!(
|
||||
"/api/price/{}/candlesticks?start=2000&end=3000&stepsize=500",
|
||||
token.to_hex()
|
||||
token.to_string()
|
||||
))
|
||||
.dispatch()
|
||||
.await;
|
||||
|
|
@ -916,7 +915,7 @@ async fn test_raw_path_seeded_gap_fill_no_in_window_trades() {
|
|||
/// then real candle and post-trade gap-fill use the in-window close.
|
||||
#[rocket::async_test]
|
||||
async fn test_raw_path_seeded_gap_fill_then_in_window_trade() {
|
||||
let token = TokenID::from_inner([0xBB; 32]);
|
||||
let token = TokenID::from_byte_array([0xBB; 32]);
|
||||
|
||||
let token_copy = token;
|
||||
let db = mock_db_pool(move |pool: sqlx::SqlitePool| async move {
|
||||
|
|
@ -936,7 +935,7 @@ async fn test_raw_path_seeded_gap_fill_then_in_window_trade() {
|
|||
let resp = client
|
||||
.get(format!(
|
||||
"/api/price/{}/candlesticks?start=2000&end=3500&stepsize=500",
|
||||
token.to_hex()
|
||||
token.to_string()
|
||||
))
|
||||
.dispatch()
|
||||
.await;
|
||||
|
|
@ -976,7 +975,7 @@ async fn test_raw_path_seeded_gap_fill_then_in_window_trade() {
|
|||
/// Without a pre-window trade no candles appear before the first in-window trade.
|
||||
#[rocket::async_test]
|
||||
async fn test_raw_path_no_seed_no_prefill() {
|
||||
let token = TokenID::from_inner([0xBC; 32]);
|
||||
let token = TokenID::from_byte_array([0xBC; 32]);
|
||||
|
||||
let token_copy = token;
|
||||
let db = mock_db_pool(move |pool: sqlx::SqlitePool| async move {
|
||||
|
|
@ -995,7 +994,7 @@ async fn test_raw_path_no_seed_no_prefill() {
|
|||
let resp = client
|
||||
.get(format!(
|
||||
"/api/price/{}/candlesticks?start=2000&end=3500&stepsize=500",
|
||||
token.to_hex()
|
||||
token.to_string()
|
||||
))
|
||||
.dispatch()
|
||||
.await;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue