From b5445a09e9f0942ecd561575367f0d1f120415f6 Mon Sep 17 00:00:00 2001 From: Mac L Date: Fri, 23 Aug 2024 23:45:41 +1000 Subject: [PATCH] Don't have block_service as an Option --- validator_client/src/http_api/mod.rs | 12 ++---------- validator_client/src/http_api/test_utils.rs | 5 ++++- validator_client/src/http_api/tests.rs | 5 ++++- validator_client/src/lib.rs | 2 +- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/validator_client/src/http_api/mod.rs b/validator_client/src/http_api/mod.rs index cffbcd62a5..f98f3c7db5 100644 --- a/validator_client/src/http_api/mod.rs +++ b/validator_client/src/http_api/mod.rs @@ -73,7 +73,7 @@ impl From for Error { pub struct Context { pub task_executor: TaskExecutor, pub api_secret: ApiSecret, - pub block_service: Option>, + pub block_service: BlockService, pub validator_store: Option>>, pub validator_dir: Option, pub secrets_dir: Option, @@ -172,15 +172,7 @@ pub fn serve( }; let inner_block_service = ctx.block_service.clone(); - let block_service_filter = warp::any() - .map(move || inner_block_service.clone()) - .and_then(|block_service: Option<_>| async move { - block_service.ok_or_else(|| { - warp_utils::reject::custom_not_found( - "block service is not initialized.".to_string(), - ) - }) - }); + let block_service_filter = warp::any().map(move || inner_block_service.clone()); let inner_validator_store = ctx.validator_store.clone(); let validator_store_filter = warp::any() diff --git a/validator_client/src/http_api/test_utils.rs b/validator_client/src/http_api/test_utils.rs index d135dfc272..8885160c6c 100644 --- a/validator_client/src/http_api/test_utils.rs +++ b/validator_client/src/http_api/test_utils.rs @@ -1,5 +1,6 @@ use crate::doppelganger_service::DoppelgangerService; use crate::key_cache::{KeyCache, CACHE_FILENAME}; +use crate::BlockServiceBuilder; use crate::{ http_api::{ApiSecret, Config as HttpConfig, Context}, initialized_validators::{InitializedValidators, OnDecryptFailure}, @@ -127,7 +128,9 @@ impl ApiTester { let context = Arc::new(Context { task_executor: test_runtime.task_executor.clone(), api_secret, - block_service: None, + block_service: BlockServiceBuilder::new() + .build() + .expect("Should build block service"), validator_dir: Some(validator_dir.path().into()), secrets_dir: Some(secrets_dir.path().into()), validator_store: Some(validator_store.clone()), diff --git a/validator_client/src/http_api/tests.rs b/validator_client/src/http_api/tests.rs index f6da4f76e7..a64aa3ad5b 100644 --- a/validator_client/src/http_api/tests.rs +++ b/validator_client/src/http_api/tests.rs @@ -4,6 +4,7 @@ mod keystores; use crate::doppelganger_service::DoppelgangerService; +use crate::BlockServiceBuilder; use crate::{ http_api::{ApiSecret, Config as HttpConfig, Context}, initialized_validators::InitializedValidators, @@ -115,7 +116,9 @@ impl ApiTester { let context = Arc::new(Context { task_executor: test_runtime.task_executor.clone(), api_secret, - block_service: None, + block_service: BlockServiceBuilder::new() + .build() + .expect("Should build block service"), validator_dir: Some(validator_dir.path().into()), secrets_dir: Some(secrets_dir.path().into()), validator_store: Some(validator_store.clone()), diff --git a/validator_client/src/lib.rs b/validator_client/src/lib.rs index 9a02ffdefb..548fe0d678 100644 --- a/validator_client/src/lib.rs +++ b/validator_client/src/lib.rs @@ -572,7 +572,7 @@ impl ProductionValidatorClient { let ctx = Arc::new(http_api::Context { task_executor: self.context.executor.clone(), api_secret, - block_service: Some(self.block_service.clone()), + block_service: self.block_service.clone(), validator_store: Some(self.validator_store.clone()), validator_dir: Some(self.config.validator_dir.clone()), secrets_dir: Some(self.config.secrets_dir.clone()),