Coverage for hdl_registers/generator/python/test/accessor/test_accessor_basic.py: 100%
18 statements
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-12 11:11 +0000
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-12 11:11 +0000
1# --------------------------------------------------------------------------------------------------
2# Copyright (c) Lukas Vik. All rights reserved.
3#
4# This file is part of the hdl-registers project, an HDL register generator fast enough to run
5# in real time.
6# https://hdl-registers.com
7# https://github.com/hdl-registers/hdl-registers
8# --------------------------------------------------------------------------------------------------
10import pytest
11from tsfpga.system_utils import load_python_module
13from hdl_registers.generator.python.accessor import PythonAccessorGenerator
14from hdl_registers.generator.python.pickle import PythonPickleGenerator
15from hdl_registers.register_list import RegisterList
18def test_generate_with_no_registers(tmp_path):
19 register_list = RegisterList(name="test")
21 PythonPickleGenerator(register_list=register_list, output_folder=tmp_path).create()
22 PythonAccessorGenerator(register_list=register_list, output_folder=tmp_path).create()
24 python_module = load_python_module(tmp_path / "test_accessor.py")
25 python_module.get_accessor(register_accessor=None)
28def test_create_accessor_without_pickle_should_raise_exception(tmp_path):
29 register_list = RegisterList(name="test")
31 PythonAccessorGenerator(register_list=register_list, output_folder=tmp_path).create()
33 python_module = load_python_module(tmp_path / "test_accessor.py")
34 with pytest.raises(FileNotFoundError) as exception_info:
35 python_module.get_accessor(register_accessor=None)
36 assert str(exception_info.value) == (
37 f"Could not find the pickle file {tmp_path / 'test.pickle'}, "
38 "make sure this artifact is generated."
39 )