Coverage for tests / test_cliLog.py: 59%
17 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-04-30 08:41 +0000
« prev ^ index » next coverage.py v7.13.5, created at 2026-04-30 08:41 +0000
1# This file is part of daf_butler.
2#
3# Developed for the LSST Data Management System.
4# This product includes software developed by the LSST Project
5# (http://www.lsst.org).
6# See the COPYRIGHT file at the top-level directory of this distribution
7# for details of code ownership.
8#
9# This software is dual licensed under the GNU General Public License and also
10# under a 3-clause BSD license. Recipients may choose which of these licenses
11# to use; please see the files gpl-3.0.txt and/or bsd_license.txt,
12# respectively. If you choose the GPL option then the following text applies
13# (but note that there is still no warranty even if you opt for BSD instead):
14#
15# This program is free software: you can redistribute it and/or modify
16# it under the terms of the GNU General Public License as published by
17# the Free Software Foundation, either version 3 of the License, or
18# (at your option) any later version.
19#
20# This program is distributed in the hope that it will be useful,
21# but WITHOUT ANY WARRANTY; without even the implied warranty of
22# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23# GNU General Public License for more details.
24#
25# You should have received a copy of the GNU General Public License
26# along with this program. If not, see <http://www.gnu.org/licenses/>.
28"""Unit tests for the daf_butler dataset-type CLI option."""
30import logging
31import unittest
33from lsst.daf.butler.cli.cliLog import CliLog
34from lsst.daf.butler.tests import CliLogTestBase
36try:
37 import lsst.log as lsstLog
38except ModuleNotFoundError:
39 lsstLog = None
42class CliLogTestCase(CliLogTestBase, unittest.TestCase):
43 """Test log initialization, reset, and setting log levels on python
44 `logging` and also `lsst.log` if it is setup.
46 This will not test use of `lsst.log` in CI because daf_butler does not
47 directly depend on that package. When running in an environment where
48 `lsst.log` is setup then this will test use of `lsst.log`. This test also
49 runs in obs_base which does provide coverage of python `logging` and
50 `lsst.log` in CI.
51 """
53 pass
56class ConvertPyLogLevelTestCase(unittest.TestCase):
57 """Test python command-line log levels."""
59 def test_convertToPyLogLevel(self):
60 self.assertEqual(logging.CRITICAL, CliLog._getPyLogLevel("CRITICAL"))
61 self.assertEqual(logging.ERROR, CliLog._getPyLogLevel("ERROR"))
62 self.assertEqual(logging.WARN, CliLog._getPyLogLevel("WARNING"))
63 self.assertEqual(logging.INFO, CliLog._getPyLogLevel("INFO"))
64 self.assertEqual(logging.DEBUG, CliLog._getPyLogLevel("DEBUG"))
67if __name__ == "__main__":
68 unittest.main()