tests: add `test_serving_readiness_router`
parent
a746aa05bc
commit
7ef762a88e
|
@ -1,4 +1,6 @@
|
|||
use influxdb_iox_client::{management::generated_types::DatabaseRules, write::WriteError};
|
||||
use influxdb_iox_client::{
|
||||
management::generated_types::DatabaseRules, router::generated_types::Router, write::WriteError,
|
||||
};
|
||||
use tonic::Code;
|
||||
|
||||
use crate::common::server_fixture::{ServerFixture, ServerType};
|
||||
|
@ -46,7 +48,47 @@ async fn test_serving_readiness_database() {
|
|||
write_client.write_lp(name, lp_data, 0).await.unwrap();
|
||||
}
|
||||
|
||||
// TODO(marco): add `test_serving_readiness_router` once we have some other API that we could use for testing
|
||||
#[tokio::test]
|
||||
async fn test_serving_readiness_router() {
|
||||
let server_fixture = ServerFixture::create_single_use(ServerType::Router).await;
|
||||
let mut deployment_client = server_fixture.deployment_client();
|
||||
let mut router_client = server_fixture.router_client();
|
||||
let mut write_client = server_fixture.write_client();
|
||||
|
||||
let name = "foo";
|
||||
let lp_data = "bar baz=1 10";
|
||||
|
||||
deployment_client
|
||||
.update_server_id(42)
|
||||
.await
|
||||
.expect("set ID failed");
|
||||
router_client
|
||||
.update_router(Router {
|
||||
name: name.to_string(),
|
||||
..Default::default()
|
||||
})
|
||||
.await
|
||||
.expect("create router failed");
|
||||
|
||||
assert!(deployment_client.get_serving_readiness().await.unwrap());
|
||||
|
||||
deployment_client
|
||||
.set_serving_readiness(false)
|
||||
.await
|
||||
.unwrap();
|
||||
let err = write_client.write_lp(name, lp_data, 0).await.unwrap_err();
|
||||
assert!(
|
||||
matches!(&err, WriteError::ServerError(status) if status.code() == Code::Unavailable),
|
||||
"{}",
|
||||
&err
|
||||
);
|
||||
|
||||
assert!(!deployment_client.get_serving_readiness().await.unwrap());
|
||||
|
||||
deployment_client.set_serving_readiness(true).await.unwrap();
|
||||
assert!(deployment_client.get_serving_readiness().await.unwrap());
|
||||
write_client.write_lp(name, lp_data, 0).await.unwrap();
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
async fn test_set_get_writer_id_database() {
|
||||
|
|
Loading…
Reference in New Issue