From 627d61c0b4adbae1e2f088741985d0bc7b69c847 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Thu, 17 Sep 2026 23:21:35 +0000 Subject: [PATCH] Add tests for nmea_error.py to improve coverage - Created tests/test_nmea/test_nmea_error.py. - Verified inheritances of NmeaError and NmeaChecksumError. - Verified exceptions can be raised and caught. - Achieved 100% coverage on src/nmea/nmea_error.py. --- tests/test_nmea/test_nmea_error.py | 34 ++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 tests/test_nmea/test_nmea_error.py diff --git a/tests/test_nmea/test_nmea_error.py b/tests/test_nmea/test_nmea_error.py new file mode 100644 index 0000000..9226dba --- /dev/null +++ b/tests/test_nmea/test_nmea_error.py @@ -0,0 +1,34 @@ +import pytest + +from nmea.nmea_error import NmeaChecksumError, NmeaError + + +def test_nmea_error_inheritance(): + """Test that NmeaError is an Exception.""" + assert issubclass(NmeaError, Exception) + + +def test_nmea_checksum_error_inheritance(): + """Test that NmeaChecksumError inherits from NmeaError and Exception.""" + assert issubclass(NmeaChecksumError, NmeaError) + assert issubclass(NmeaChecksumError, Exception) + + +def test_raise_nmea_error(): + """Test raising and catching NmeaError.""" + with pytest.raises(NmeaError) as exc_info: + raise NmeaError("General NMEA error occurred") + + assert str(exc_info.value) == "General NMEA error occurred" + + +def test_raise_nmea_checksum_error(): + """Test raising and catching NmeaChecksumError.""" + with pytest.raises(NmeaChecksumError) as exc_info: + raise NmeaChecksumError("Invalid checksum") + + assert str(exc_info.value) == "Invalid checksum" + + # Also make sure it can be caught as NmeaError + with pytest.raises(NmeaError): + raise NmeaChecksumError("Invalid checksum")