# build-aux/measurestack/test_analyze.py - Tests for analyze.py # # Copyright (C) 2025 Luke T. Shumaker # SPDX-License-Identifier: AGPL-3.0-or-later # pylint: disable=unused-variable import pytest from .analyze import BaseName, QName def test_name_base() -> None: assert QName("foo.c:bar.1").base() == BaseName("bar") def test_name_pretty() -> None: name = QName("foo.c:bar.1") assert f"{name}" == "QName('foo.c:bar.1')" assert f"{name.base()}" == "BaseName('bar')" assert f"{[name]}" == "[QName('foo.c:bar.1')]" assert f"{[name.base()]}" == "[BaseName('bar')]" def test_name_eq() -> None: name = QName("foo.c:bar.1") with pytest.raises(AssertionError) as e: if name == "foo": pass assert "comparing QName with str" in str(e) with pytest.raises(AssertionError) as e: if name.base() == "foo": pass assert "comparing BaseName with str" in str(e)