dropshot_api_manager/
test_util.rs1pub use crate::output::CheckResult;
6use crate::{
7 apis::ManagedApis,
8 cmd::{
9 check::check_impl,
10 dispatch::{BlessedSourceArgs, GeneratedSourceArgs},
11 },
12 environment::{Environment, GeneratedSource},
13 output::OutputOpts,
14};
15use camino::Utf8PathBuf;
16
17pub fn check_apis_up_to_date(
21 env: &Environment,
22 apis: &ManagedApis,
23) -> Result<CheckResult, anyhow::Error> {
24 check_apis_impl(env, apis, None)
25}
26
27pub fn check_apis_with_generated_from_dir(
30 env: &Environment,
31 apis: &ManagedApis,
32 generated_from_dir: Utf8PathBuf,
33) -> Result<CheckResult, anyhow::Error> {
34 check_apis_impl(env, apis, Some(generated_from_dir))
35}
36
37fn check_apis_impl(
38 env: &Environment,
39 apis: &ManagedApis,
40 generated_from_dir: Option<Utf8PathBuf>,
41) -> Result<CheckResult, anyhow::Error> {
42 let env = env.resolve(None)?;
46
47 let blessed_source =
48 BlessedSourceArgs { blessed_from_git: None, blessed_from_dir: None }
49 .to_blessed_source(&env)?;
50 let generated_source =
51 GeneratedSource::from(GeneratedSourceArgs { generated_from_dir });
52 let output = OutputOpts { color: clap::ColorChoice::Auto };
53
54 check_impl(apis, &env, &blessed_source, &generated_source, &output)
55}