diff --git a/coverage/cmdline.py b/coverage/cmdline.py index d5f8e6f31..4c8508013 100644 --- a/coverage/cmdline.py +++ b/coverage/cmdline.py @@ -731,6 +731,8 @@ def command_line(self, argv): # value, so we can get fail_under from the config file. if options.fail_under is not None: self.coverage.set_option("report:fail_under", options.fail_under) + if options.precision is not None: + self.coverage.set_option("report:precision", options.precision) fail_under = self.coverage.get_option("report:fail_under") precision = self.coverage.get_option("report:precision") diff --git a/tests/test_cmdline.py b/tests/test_cmdline.py index a10bdc5f0..d4fe830a4 100644 --- a/tests/test_cmdline.py +++ b/tests/test_cmdline.py @@ -1136,6 +1136,9 @@ def lcov_report(self, *args_unused, **kwargs_unused): ((20, 30, 40, 50, 60), 61, "lcov", 2), # Command-line overrides configuration. ((20, 30, 40, 50, 60), 19, "report --fail-under=21", 2), + # Precision defined + ((20, 30, 40, 50, 60), None, "report --fail-under=20.1 --precision=1", 2), + ((20, 30, 40, 50, 60), None, "report --fail-under=19.9 --precision=1", 0), ]) def test_fail_under(results, fail_under, cmd, ret): cov = CoverageReportingFake(*results)