use super::pretty_codegen;
#[test]
fn test_simple_enum() {
let input = syn::parse_quote! {
pub enum Mode {
Network,
Offline,
}
};
let interactive_clap_codegen = crate::derives::interactive_clap::impl_interactive_clap(&input);
insta::assert_snapshot!(pretty_codegen(&interactive_clap_codegen));
let to_cli_args_codegen = crate::derives::to_cli_args::impl_to_cli_args(&input);
insta::assert_snapshot!(pretty_codegen(&to_cli_args_codegen));
}
#[test]
fn test_simple_enum_with_strum_discriminants() {
let input = syn::parse_quote! {
#[strum_discriminants(derive(EnumMessage, EnumIter))]
pub enum Mode {
#[strum_discriminants(strum(message = "Yes, I keep it simple"))]
Network,
#[strum_discriminants(strum(
message = "No, I want to work in no-network (air-gapped) environment"
))]
Offline,
}
};
let interactive_clap_codegen = crate::derives::interactive_clap::impl_interactive_clap(&input);
insta::assert_snapshot!(pretty_codegen(&interactive_clap_codegen));
let to_cli_args_codegen = crate::derives::to_cli_args::impl_to_cli_args(&input);
insta::assert_snapshot!(pretty_codegen(&to_cli_args_codegen));
}