diff --git a/crates/orderbook/src/api/get_user_orders.rs b/crates/orderbook/src/api/get_user_orders.rs index f4fc4f7f62..77783b29bf 100644 --- a/crates/orderbook/src/api/get_user_orders.rs +++ b/crates/orderbook/src/api/get_user_orders.rs @@ -1,7 +1,7 @@ use { crate::{api::ApiReply, orderbook::Orderbook}, + alloy::primitives::Address, anyhow::Result, - primitive_types::H160, serde::Deserialize, std::{convert::Infallible, sync::Arc}, warp::{Filter, Rejection, hyper::StatusCode, reply::with_status}, @@ -13,8 +13,8 @@ struct Query { limit: Option, } -fn request() -> impl Filter + Clone { - warp::path!("v1" / "account" / H160 / "orders") +fn request() -> impl Filter + Clone { + warp::path!("v1" / "account" / Address / "orders") .and(warp::get()) .and(warp::query::()) } @@ -22,7 +22,7 @@ fn request() -> impl Filter + Clone pub fn get_user_orders( orderbook: Arc, ) -> impl Filter + Clone { - request().and_then(move |owner: H160, query: Query| { + request().and_then(move |owner: Address, query: Query| { let orderbook = orderbook.clone(); async move { const DEFAULT_OFFSET: u64 = 0; @@ -54,7 +54,7 @@ pub fn get_user_orders( #[cfg(test)] mod tests { - use {super::*, shared::addr}; + use super::*; #[tokio::test] async fn request_() { @@ -65,7 +65,7 @@ mod tests { .filter(&request()) .await .unwrap(); - assert_eq!(result.0, addr!("0000000000000000000000000000000000000001")); + assert_eq!(result.0, Address::with_last_byte(1)); assert_eq!(result.1.offset, None); assert_eq!(result.1.limit, None); diff --git a/crates/orderbook/src/database/orders.rs b/crates/orderbook/src/database/orders.rs index 21630021e7..50348b6378 100644 --- a/crates/orderbook/src/database/orders.rs +++ b/crates/orderbook/src/database/orders.rs @@ -72,7 +72,7 @@ pub trait OrderStoring: Send + Sync { /// orders first). async fn user_orders( &self, - owner: &H160, + owner: &Address, offset: u64, limit: Option, ) -> Result>; @@ -329,7 +329,7 @@ impl OrderStoring for Postgres { async fn user_orders( &self, - owner: &H160, + owner: &Address, offset: u64, limit: Option, ) -> Result> { @@ -341,7 +341,7 @@ impl OrderStoring for Postgres { let mut ex = self.pool.acquire().await?; database::order_history::user_orders( &mut ex, - &ByteArray(owner.0), + &ByteArray(owner.0.0), i64::try_from(offset).unwrap_or(i64::MAX), limit.map(|l| i64::try_from(l).unwrap_or(i64::MAX)), ) @@ -641,6 +641,7 @@ mod tests { SigningScheme as DbSigningScheme, }, }, + ethrpc::alloy::conversions::IntoAlloy, model::{ interaction::InteractionData, order::{Order, OrderData, OrderMetadata, OrderStatus, OrderUid}, @@ -904,7 +905,7 @@ mod tests { .unwrap(); let order_statuses = db - .user_orders(&owner, 0, None) + .user_orders(&owner.into_alloy(), 0, None) .await .unwrap() .iter() diff --git a/crates/orderbook/src/orderbook.rs b/crates/orderbook/src/orderbook.rs index 26343278a7..ba040e8ff9 100644 --- a/crates/orderbook/src/orderbook.rs +++ b/crates/orderbook/src/orderbook.rs @@ -7,7 +7,7 @@ use { dto, solver_competition::{Identifier, LoadSolverCompetitionError, SolverCompetitionStoring}, }, - alloy::primitives::B256, + alloy::primitives::{Address, B256}, anyhow::{Context, Result}, app_data::{AppDataHash, Validator}, bigdecimal::ToPrimitive, @@ -512,7 +512,7 @@ impl Orderbook { pub async fn get_user_orders( &self, - owner: &H160, + owner: &Address, offset: u64, limit: u64, ) -> Result> {