From 55f115d875bf70305ca43e93761395b4329a23a6 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Thu, 27 Apr 2017 21:56:42 +0300 Subject: Add standard_version_constraint::satisfies() --- tests/standard-version/driver.cxx | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'tests/standard-version/driver.cxx') diff --git a/tests/standard-version/driver.cxx b/tests/standard-version/driver.cxx index e6a21ef..86d9621 100644 --- a/tests/standard-version/driver.cxx +++ b/tests/standard-version/driver.cxx @@ -76,12 +76,14 @@ version (const string& s, bool allow_earliest = true) // argv[0] -b // argv[0] -c // argv[0] -r +// argv[0] -s // argv[0] // // -a output 'y' for alpha-version, 'n' otherwise // -b output 'y' for beta-version, 'n' otherwise // -c output 0 if versions are equal, -1 if the first one is less, 1 otherwise // -r create version constraints from STDIN lines, and print them to STDOUT +// -s output 'y' if version satisfies constraint, 'n' otherwise // // If no options are specified, then create versions from STDIN lines, and // print them to STDOUT. @@ -100,18 +102,14 @@ try if (o == "-a") { assert (argc == 3); - char r (version (argv[2]).alpha () - ? 'y' - : 'n'); + char r (version (argv[2]).alpha () ? 'y' : 'n'); cout << r << endl; } else if (o == "-b") { assert (argc == 3); - char r (version (argv[2]).beta () - ? 'y' - : 'n'); + char r (version (argv[2]).beta () ? 'y' : 'n'); cout << r << endl; } @@ -130,6 +128,15 @@ try while (getline (cin, s)) cout << standard_version_constraint (s) << endl; } + else if (o == "-s") + { + assert (argc == 4); + + char r (standard_version_constraint (argv[3]).satisfies ( + version (argv[2])) ? 'y' : 'n'); + + cout << r << endl; + } else assert (false); -- cgit v1.1