#![allow(dead_code)]
use time::macros::date;
use time::Date;
use crate::wsh::AutoFill;
pub mod json_responses {
pub const METADATA_SIMPLE: &str = r#"{"validated":true,"data":{"metadata":"test"}}"#;
pub const METADATA_EMPTY: &str = "{}";
pub const METADATA_SPECIAL_CHARS: &str = r#"{"data":"Special chars: \n\t\"quoted\""}"#;
pub const EVENT_DATA_SIMPLE: &str = r#"{"validated":true,"data":{"events":[]}}"#;
pub const EVENT_DATA_EMPTY: &str = "{}";
pub const EVENT_DATA_EARNINGS: &str = r#"{"event":"earnings","date":"2024-01-15"}"#;
pub const EVENT_DATA_DIVIDEND: &str = r#"{"event":"dividend","date":"2024-02-01"}"#;
pub const EVENT_DATA_NO_FILTERS: &str = r#"{"events":[{"type":"earnings"}]}"#;
}
pub const REQUEST_ID_METADATA: i32 = 9000;
pub const REQUEST_ID_EVENT_DATA: i32 = 9001;
pub const REQUEST_ID_FILTER: i32 = 9003;
pub fn test_start_date() -> Date {
date!(2024 - 01 - 01)
}
pub fn test_end_date() -> Date {
date!(2024 - 12 - 31)
}
pub fn autofill_all_true() -> AutoFill {
AutoFill {
competitors: true,
portfolio: true,
watchlist: true,
}
}
pub fn autofill_mixed() -> AutoFill {
AutoFill {
competitors: true,
portfolio: false,
watchlist: true,
}
}
pub const TEST_CONTRACT_ID: i32 = 12345;
pub const TEST_FILTER: &str = "earnings";
pub mod server_versions {
pub const OLD_VERSION: i32 = 100;
}
pub fn build_response(message_type: &str, request_id: i32, data: &str) -> String {
format!("{}|{}|{}|", message_type, request_id, data)
}
pub fn build_error_response(request_id: i32, error_code: i32, error_msg: &str) -> String {
format!("4|2|{}|{}|{}|", request_id, error_code, error_msg)
}