Skip to content

Commit

Permalink
test: Add test for default_value_os_t
Browse files Browse the repository at this point in the history
  • Loading branch information
omjadas committed Jun 15, 2022
1 parent b1be436 commit 4d52142
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions tests/derive/default_value.rs
@@ -1,3 +1,5 @@
use std::path::PathBuf;

use clap::{CommandFactory, Parser};

use crate::utils;
Expand Down Expand Up @@ -44,6 +46,30 @@ fn auto_default_value_t() {
assert!(help.contains("[default: 0]"));
}

#[test]
fn default_value_os_t() {
#[derive(Parser, PartialEq, Debug)]
struct Opt {
#[clap(value_parser, default_value_os_t = PathBuf::from("abc.def"))]
arg: PathBuf,
}
assert_eq!(
Opt {
arg: PathBuf::from("abc.def")
},
Opt::try_parse_from(&["test"]).unwrap()
);
assert_eq!(
Opt {
arg: PathBuf::from("ghi")
},
Opt::try_parse_from(&["test", "ghi"]).unwrap()
);

let help = utils::get_long_help::<Opt>();
assert!(help.contains("[default: abc.def]"));
}

#[test]
fn detect_os_variant() {
#![allow(unused_parens)] // needed for `as_ref` call
Expand Down

0 comments on commit 4d52142

Please sign in to comment.