David Hewitt
94f6889116
Don't use default value when option is passed
2020-10-14 20:00:40 +01:00
bors[bot]
5a1a209965
Merge #2161
...
2161: Fix parser skipping options without heading set r=pksunkara a=CertainLach
Co-authored-by: Yaroslav Bolyukin <iam@lach.pw>
2020-10-11 08:55:33 +00:00
Donough Liu
c9a407aa54
Fix: Don't mention unused subcommands (Partly cherry pick ef92e2b
)
...
Add `\t` for consistency
2020-10-10 03:34:28 +08:00
Yaroslav Bolyukin
659d688543
test: add failing test for #2022
...
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
2020-10-09 23:45:07 +05:00
Donough Liu
5815246fd9
Fix the error logic and error message for suggesting -- before a flag
...
Fix tests
Add test for issue #1284
Apply nitpicks
2020-10-10 00:04:22 +08:00
Pavan Kumar Sunkara
7bc282dd4e
Rename with_name to new for Arg & ArgGroup
2020-05-14 22:50:56 +02:00
CreepySkeleton
bec16ae9e0
Add tests
2020-04-20 18:29:45 +03:00
Pavan Kumar Sunkara
070bd50b28
Finished color refactor
2020-04-16 12:51:26 +02:00
Ivan Tham
22ed69e857
Add test for suboptimal flag suggestion
...
Fix #1073
2020-04-12 23:44:48 +08:00
Pavan Kumar Sunkara
b7f76d8e8d
Put the test helper in tests
2020-02-04 09:51:46 +01:00
Oleksii Filonenko
1e39967044
Fix some clippy lints
...
- Manually fix some problems
- Run 'cargo fix --clippy'
Commits taken from similar PRs open at that time:
- Replace indexmap remove with swap_remove
Resolves #1562 and closes #1563
- Use cognitive_complexity for clippy lint
Resolves #1564 and closes #1565
- Replace deprecated trim_left_matches with trim_start_matches
Closes #1539
Co-authored-by: Antoine Martin <antoine97.martin@gmail.com>
Co-authored-by: Brian Foley <bpfoley@users.noreply.github.com>
2019-10-29 21:46:25 -04:00
Ross Harrison
8d953cab08
feat(Errors): Add Pattern suggestion to Unknown Arg Error Message
2019-07-01 11:01:11 -05:00
Kevin K
4cc85990fd
refactor: removed strings as an internal ID for arguments, groups, and
...
subcommands
This commit changes the internal ID to a u64 which will allow for
greater optimizations down the road. In addition, it lays the ground
work for allowing users to use things like enum variants as argument
keys instead of strings.
The only downside is each key needs to be hashed (the implementation
used is an FNV hasher for performance). However, the performance gains
in faster iteration, comparison, etc. should easily outweigh the single
hash of each argument.
Another benefit of if this commit is the removal of several lifetime
parameters, as it stands Arg and App now only have a single lifetime
parameter, and ArgMatches and ArgGroup have no lifetime parameter.
2019-04-05 20:21:22 -04:00
Kevin K
03333800fe
refactor: remove code going to other crates and deprecations
2018-10-19 23:31:06 -04:00
Kevin K
eaa0700e7e
style: rustfmt run
2018-08-01 23:13:51 -04:00
Kevin K
94872e00a5
refactor(Arg): changes Arg::short to accept a char instead of &str
...
Closes #1303
2018-07-23 15:10:12 -04:00
Corentin Henry
4f602b7e86
replace Arg::from_usage by Arg::from
2018-04-21 11:59:19 -07:00
Kevin K
97fd3f1328
tests: partially updates tests to new arg.setting calls
2018-02-03 15:06:58 -05:00
Kevin K
1ab10275e4
style: rustfmt run
2018-01-25 12:21:17 -05:00
Kevin K
17a4d8a860
tests: adds tests to guard aginst issue 1105 and empty values in options
2017-11-13 17:05:28 -05:00
Kevin K
e1319fa198
tests: adds tests to guard against options with default values and zero or more values
2017-09-14 10:37:45 -07:00
Kevin K
150a0433ce
tests: adds tests for using requires_equals and min_values together
2017-09-13 12:27:19 -07:00
Kevin K
5209b61192
tests: adds tests for using double hyphen -- as a value
2017-05-16 07:23:22 -04:00
Kevin K
a01812fed8
tests: adds tests for requiring the equals syntax in options
2017-02-20 20:24:28 -05:00
Kevin K
f967235a90
tests: massively rehauls tests for better debugging and vastly improved error messages/deduplication
2017-01-02 23:05:50 -05:00
Kevin K
327c514d7a
test(Options): adds a test against issue 665
2016-12-30 16:25:48 -05:00
Kevin K
b03eff6df5
tests(Default Values If): adds tests for the new defualt_value_if[s] methods
2016-12-28 23:21:40 -05:00
Kevin K
cf9d6ce5cd
refactor: refactors the internals a bit
...
Flags, Opts, and Positionals now store their internals using compartmented Base, Valued, and
Switched structs to keep the code duplication down and make it easier to maintain.
Iniside the src/app/parser.rs there have been several changes to make reasoning about the code
easier. Primarily moving related sections out of the large get_matches_with into their own
functions.
2016-11-20 14:47:03 -05:00
tormol
996fc38176
docs: fix tests that fail when the "suggestions" feature is disabled
2016-10-16 11:31:12 +02:00
Bence Szigeti
8d7bea823f
Fix: extra space typo removed
2016-07-05 22:01:04 +02:00
Kevin K
98a7e8a636
tests(Arg): adds tests for
...
Closes #546
2016-06-29 23:01:47 -04:00
Kevin K
c84834abbb
tests(Options): adds tests to cover new stop parsing vals after spaces with equals or delims
2016-06-29 13:30:30 -04:00
Kevin K
b42ca0b5ab
chore(Tests): had to remove external clap-test crate...sad face
2016-05-09 22:46:09 -04:00
Kevin K
852e58156c
tests: removes old python tests and replaces with rust tests
...
Closes #166
2016-05-09 19:14:11 -04:00
Kevin K
baf0e18095
tests(Empty Values): adds tests for empty values
2016-03-29 22:31:40 -04:00
Kevin K
9250b1323c
tests: adds tests for default values
2016-02-10 10:56:58 -05:00
Kevin K
a33e3df8f5
tests: adds tests for stdin char and only positional vals follow
2016-02-04 02:01:10 -05:00
Kevin K
07dfdd00ea
tests(multiples): adds tests for > u8::max vals and occurrences
2016-02-02 07:45:49 -05:00
Kevin K
816cec8152
tests(Usage Parser): moves tests usage parser since that's what it's testing
2016-01-31 07:12:15 -05:00
Kevin K
28041cdad9
tests: adds tests for comma separated values
2016-01-28 11:45:31 -05:00
Kevin K
f17e150894
tests(Usage Parser): adds and fixes tests for usage parser
2016-01-28 11:45:31 -05:00
Kevin K
c3e96232c9
tests(v2): fixing more tests on the new v2 base
2016-01-28 11:45:31 -05:00
Kevin K
0031d78564
refactor(v2): improving macros for code dedup
2016-01-28 11:45:31 -05:00
Kevin K
7fc18e685f
test(v2): fixing tests to pass under new v2 changes
2016-01-28 11:45:31 -05:00
Alexander Kuvaev
0cfecd328c
tests: moved tests from lib.rs to tests.rs and tests dir
2015-08-28 21:48:37 +03:00