gr-mcp/tests/test_platform.py
2025-04-26 16:08:09 +03:00

30 lines
938 B
Python

import pytest
from gnuradio_mcp.middlewares.platform import BlockModel, PlatformMiddleware
from gnuradio.grc.core.blocks.block import Block
from gnuradio.grc.core.platform import Platform
from gnuradio import gr
@pytest.fixture
def platform() -> Platform:
platform = Platform(
version=gr.version(),
version_parts=(gr.major_version(), gr.api_version(), gr.minor_version()),
prefs=gr.prefs(),
)
platform.build_library()
return platform
def test_block_model_from_block(platform):
block = Block(platform)
model = BlockModel.from_block(block)
assert model.label == block.label
assert model.key == block.key
def test_platform_middleware_blocks(platform):
middleware = PlatformMiddleware(platform)
block_models = middleware.blocks
assert block_models # Checks that the list is not empty
assert all(isinstance(block_model, BlockModel) for block_model in block_models)