This repository has been archived on 2023-03-26. You can view files and clone it, but cannot push or open issues or pull requests.
md-pdf-rs/src/tests/args.rs

51 lines
1.6 KiB
Rust
Raw Permalink Normal View History

2017-07-12 14:40:25 +01:00
use args;
2017-07-14 10:25:45 +01:00
use clap::ErrorKind;
2017-07-12 14:40:25 +01:00
#[test]
2017-07-13 09:45:19 +01:00
fn incorrect_subcommand() {
2017-07-18 14:27:50 +01:00
let out = args::get_matches_for(vec!["mdp"]);
2017-07-14 10:25:45 +01:00
assert!(out.is_err());
assert_eq!(out.unwrap_err().kind, ErrorKind::MissingArgumentOrSubcommand);
2017-07-18 14:27:50 +01:00
let out = args::get_matches_for(vec!["mdp", "invalid"]);
2017-07-14 10:25:45 +01:00
assert!(out.is_err());
assert_eq!(out.unwrap_err().kind, ErrorKind::UnknownArgument);
2017-07-13 09:45:19 +01:00
}
#[test]
fn verbose_number() {
fn get_verbose_level(arg_list: Vec<&str>) -> u64 {
2017-08-14 22:10:05 +01:00
return args::get_verbose(args::get_matches_for(arg_list).unwrap());
2017-07-13 09:45:19 +01:00
}
2017-07-18 14:27:50 +01:00
assert_eq!(get_verbose_level(vec!["mdp", "build", "-v"]), 1);
assert_eq!(get_verbose_level(vec!["mdp", "build", "-vv"]), 2);
assert_eq!(get_verbose_level(vec!["mdp", "-v", "build", "-vv"]), 3);
assert_eq!(get_verbose_level(vec!["mdp", "-vv", "build", "-v"]), 3);
assert_eq!(get_verbose_level(vec!["mdp", "-v", "build", "-v"]), 2);
assert_eq!(get_verbose_level(vec!["mdp", "-v", "build"]), 1);
assert_eq!(get_verbose_level(vec!["mdp", "--verbose", "build", "-v"]), 2);
assert_eq!(get_verbose_level(vec!["mdp", "-v", "build", "--verbose"]), 2);
2017-07-13 09:45:19 +01:00
}
#[test]
fn build_subcommand() {
2017-07-18 14:27:50 +01:00
let out = args::get_matches_for(vec!["mdp", "build"]);
2017-07-13 09:45:19 +01:00
assert!(out.is_ok());
assert_eq!(out.unwrap().subcommand_name().unwrap(), "build");
2017-07-12 14:40:25 +01:00
}
2017-07-14 10:25:45 +01:00
#[test]
fn version_string() {
2017-07-18 14:27:50 +01:00
let out = args::get_matches_for(vec!["mdp", "--version"]);
2017-07-14 10:25:45 +01:00
assert!(out.is_err());
assert_eq!(out.unwrap_err().kind, ErrorKind::VersionDisplayed);
2017-07-18 14:27:50 +01:00
let out = args::get_matches_for(vec!["mdp", "build", "--version"]);
2017-07-14 10:25:45 +01:00
assert!(out.is_err());
assert_eq!(out.unwrap_err().kind, ErrorKind::UnknownArgument);
}