chore: remove get_wal_meta test until it gets refactored

pull/24376/head
Paul Dix 2021-04-13 08:43:24 -04:00 committed by kodiakhq[bot]
parent bd13c09bad
commit 871de60bb7
1 changed files with 2 additions and 114 deletions

View File

@ -736,11 +736,7 @@ mod tests {
use query::exec::Executor;
use reqwest::{Client, Response};
use data_types::{
database_rules::{DatabaseRules, WalBufferConfig, WalBufferRollover},
wal::WriterSummary,
DatabaseName,
};
use data_types::{database_rules::DatabaseRules, DatabaseName};
use object_store::{memory::InMemory, ObjectStore};
use serde::de::DeserializeOwned;
use server::{db::Db, ConnectionManagerImpl};
@ -1103,115 +1099,6 @@ mod tests {
.await;
}
#[tokio::test]
async fn get_wal_meta() {
let server = Arc::new(AppServer::new(
ConnectionManagerImpl {},
Arc::new(ObjectStore::new_in_memory(InMemory::new())),
));
server.set_id(NonZeroU32::new(1).unwrap()).unwrap();
let server_url = test_server(Arc::clone(&server));
let database_name = "foo_bar";
let rules = DatabaseRules {
name: DatabaseName::new(database_name).unwrap(),
partition_template: Default::default(),
wal_buffer_config: Some(WalBufferConfig {
buffer_size: 500,
segment_size: 10,
buffer_rollover: WalBufferRollover::ReturnError,
store_segments: true,
close_segment_after: None,
}),
lifecycle_rules: Default::default(),
shard_config: None,
};
server
.create_database(
rules,
server.require_id().unwrap(),
Arc::clone(&server.store),
)
.await
.unwrap();
let base_url = format!(
"{}/iox/api/v1/databases/{}/wal/meta",
server_url, database_name
);
let client = Client::new();
let r1: WalMetadataResponse = check_json_response(&client, &base_url, StatusCode::OK).await;
let lines: std::result::Result<Vec<_>, _> = influxdb_line_protocol::parse_lines(
"cpu,host=A,region=west usage_system=64i 1590488773254420000",
)
.collect();
server
.write_lines(database_name, &lines.unwrap())
.await
.unwrap();
let r2: WalMetadataResponse = check_json_response(&client, &base_url, StatusCode::OK).await;
let limit_1 = serde_urlencoded::to_string(&WalMetadataQuery {
limit: Some(1),
newer_than: None,
offset: None,
})
.unwrap();
let limit_url = format!("{}?{}", base_url, limit_1);
let r3: WalMetadataResponse =
check_json_response(&client, &limit_url, StatusCode::OK).await;
let limit_future = serde_urlencoded::to_string(&WalMetadataQuery {
limit: None,
offset: None,
newer_than: Some(chrono::Utc::now() + chrono::Duration::seconds(5)),
})
.unwrap();
let future_url = format!("{}?{}", base_url, limit_future);
let r4: WalMetadataResponse =
check_json_response(&client, &future_url, StatusCode::OK).await;
// No data written yet - expect no results
assert_eq!(r1.segments.len(), 1);
assert_eq!(r1.segments[0].size, 0);
assert_eq!(r1.segments[0].writers.len(), 0);
// The WAL segment size is less than the line size
// We therefore expect an open and a closed segment in that order
// With the closed segment containing the written data
// And the open segment containing no data
assert_eq!(r2.segments.len(), 2);
assert_eq!(r2.segments[0].size, 0);
assert!(r2.segments[0].created_at >= r2.segments[1].created_at);
assert!(r2.segments[1].persisted.is_none());
assert_eq!(r2.segments[1].size, 368);
assert_eq!(r2.segments[1].writers.len(), 1);
assert_eq!(
r2.segments[1].writers.values().next().unwrap(),
&WriterSummary {
start_sequence: 1,
end_sequence: 1,
missing_sequence: false
}
);
// Query limited to a single segment - expect only the most recent segment
assert_eq!(r3.segments.len(), 1);
assert_eq!(r3.segments[0], r2.segments[0]);
// Requesting segments from future - expect no results
assert_eq!(r4.segments.len(), 0);
}
fn get_content_type(response: &Result<Response, reqwest::Error>) -> String {
if let Ok(response) = response {
response
@ -1250,6 +1137,7 @@ mod tests {
}
}
#[allow(dead_code)]
async fn check_json_response<T: DeserializeOwned + Eq + Debug>(
client: &Client,
url: &str,