currency_conversion_cli/commands/
update.rs1use crate::config::Config;
2
3use crate::cli::UpdateArgs;
4use anyhow::Result;
5use currency_conversion::update::{
6 update_converison_rates::update_conversion_rates, update_symbols::update_symbols,
7};
8
9#[cfg(not(tarpaulin_include))]
10pub fn run_update(config: &Config, args: &UpdateArgs) -> Result<()> {
11 tracing::debug!("Update arguments : {:?}", args);
12
13 if args.all || args.symbols {
14 tracing::info!("Update symbols begin");
15
16 update_symbols(
17 &config.symbols_endpoint_url,
18 &config.api_key,
19 &config.symbols_file_path,
20 )?;
21
22 tracing::info!("Update symbols end");
23 }
24
25 if args.all || args.conversion_rates {
26 tracing::info!("Update conversion rates begin");
27
28 update_conversion_rates(
29 &config.latest_endpoint_url,
30 &config.api_key,
31 &config.base,
32 &config.conversion_rates_file_path,
33 )?;
34 tracing::info!("Update conversion rates end");
35 }
36 Ok(())
37}