Coverage report: 86%

Files Functions Classes

coverage.py v7.13.0, created at 2025-12-24 01:53 +0000

      Statements   Branches   Total
File class   coverage statements missing excluded   coverage branches partial   coverage
apio / __init__.py (no class)   100% 8 0 0   100% 0 0   100%
apio / __main__.py (no class)   77% 35 8 0   61% 18 7   72%
apio / apio_context.py ApioDefinitions   100% 3 0 0   100% 0 0   100%
apio / apio_context.py EnvMutations   100% 0 0 0   100% 0 0   100%
apio / apio_context.py ProjectPolicy   100% 0 0 0   100% 0 0   100%
apio / apio_context.py PackagesPolicy   100% 0 0 0   100% 0 0   100%
apio / apio_context.py ApioContext   83% 216 36 0   72% 90 19   80%
apio / apio_context.py (no class)   100% 88 0 0   100% 0 0   100%
apio / commands / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
apio / commands / apio.py (no class)   100% 13 0 0   100% 0 0   100%
apio / commands / apio_api.py CmdInfo   100% 0 0 0   100% 0 0   100%
apio / commands / apio_api.py (no class)   90% 257 25 0   73% 48 13   88%
apio / commands / apio_boards.py Entry   100% 1 0 0   100% 0 0   100%
apio / commands / apio_boards.py (no class)   100% 108 0 0   96% 24 1   99%
apio / commands / apio_build.py (no class)   100% 22 0 0   100% 0 0   100%
apio / commands / apio_clean.py (no class)   88% 51 6 0   86% 14 2   88%
apio / commands / apio_create.py (no class)   100% 26 0 0   100% 4 0   100%
apio / commands / apio_devices.py (no class)   48% 73 38 0   25% 8 2   46%
apio / commands / apio_docs.py (no class)   55% 20 9 0   0% 2 0   50%
apio / commands / apio_drivers.py (no class)   100% 7 0 0   100% 0 0   100%
apio / commands / apio_drivers_install.py (no class)   65% 23 8 0   100% 0 0   65%
apio / commands / apio_drivers_uninstall.py (no class)   65% 23 8 0   100% 0 0   65%
apio / commands / apio_examples.py (no class)   93% 101 7 0   77% 22 5   90%
apio / commands / apio_format.py (no class)   80% 56 11 0   67% 18 6   77%
apio / commands / apio_fpgas.py Entry   100% 1 0 0   100% 0 0   100%
apio / commands / apio_fpgas.py (no class)   94% 103 6 0   79% 24 5   91%
apio / commands / apio_graph.py (no class)   92% 40 3 0   50% 6 3   87%
apio / commands / apio_info.py (no class)   95% 183 10 0   84% 50 8   92%
apio / commands / apio_lint.py (no class)   100% 32 0 0   100% 0 0   100%
apio / commands / apio_packages.py RequiredPackageRow   100% 0 0 0   100% 0 0   100%
apio / commands / apio_packages.py (no class)   81% 91 17 0   62% 26 10   77%
apio / commands / apio_preferences.py (no class)   100% 69 0 0   100% 12 0   100%
apio / commands / apio_raw.py (no class)   76% 58 14 0   67% 18 4   74%
apio / commands / apio_report.py (no class)   100% 21 0 0   100% 0 0   100%
apio / commands / apio_sim.py (no class)   100% 32 0 0   100% 4 0   100%
apio / commands / apio_test.py (no class)   100% 21 0 0   100% 0 0   100%
apio / commands / apio_upgrade.py (no class)   57% 46 20 0   50% 6 3   56%
apio / commands / apio_upload.py (no class)   78% 27 6 0   100% 0 0   78%
apio / commands / options.py (no class)   100% 21 0 0   100% 0 0   100%
apio / common / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
apio / common / apio_console.py ConsoleState   100% 4 0 0   100% 0 0   100%
apio / common / apio_console.py ConsoleCapture   100% 9 0 0   100% 0 0   100%
apio / common / apio_console.py (no class)   96% 112 5 0   88% 24 3   94%
apio / common / apio_styles.py (no class)   100% 13 0 0   100% 0 0   100%
apio / common / apio_themes.py ApioTheme   100% 0 0 0   100% 0 0   100%
apio / common / apio_themes.py (no class)   100% 12 0 0   100% 0 0   100%
apio / common / common_util.py (no class)   78% 50 11 0   90% 10 1   80%
apio / common / rich_lib_windows.py (no class)   54% 13 6 0   50% 2 1   53%
apio / managers / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
apio / managers / downloader.py FileDownloader   89% 19 2 0   62% 8 3   81%
apio / managers / downloader.py (no class)   100% 13 0 0   100% 0 0   100%
apio / managers / drivers.py Drivers   0% 107 107 0   0% 36 0   0%
apio / managers / drivers.py (no class)   100% 41 0 0   100% 0 0   100%
apio / managers / examples.py ExampleInfo   100% 1 0 0   100% 0 0   100%
apio / managers / examples.py Examples   84% 86 14 0   82% 38 7   83%
apio / managers / examples.py (no class)   100% 23 0 0   100% 0 0   100%
apio / managers / packages.py PackagesContext   100% 4 0 0   100% 0 0   100%
apio / managers / packages.py PackageScanResults   25% 12 9 0   100% 0 0   25%
apio / managers / packages.py (no class)   73% 187 50 0   63% 84 23   70%
apio / managers / programmers.py _DeviceScanner   27% 11 8 0   0% 4 0   20%
apio / managers / programmers.py (no class)   86% 179 25 0   65% 72 25   80%
apio / managers / project.py Project   85% 113 17 0   90% 68 5   87%
apio / managers / project.py (no class)   89% 90 10 0   83% 18 3   88%
apio / managers / scons_filter.py PipeId   100% 0 0 0   100% 0 0   100%
apio / managers / scons_filter.py RangeEvents   100% 0 0 0   100% 0 0   100%
apio / managers / scons_filter.py RangeDetector   76% 17 4 5   75% 8 2   76%
apio / managers / scons_filter.py PnrRangeDetector   100% 6 0 0   100% 4 0   100%
apio / managers / scons_filter.py SconsFilter   72% 43 12 0   56% 18 4   67%
apio / managers / scons_filter.py (no class)   100% 30 0 3   100% 0 0   100%
apio / managers / scons_manager.py SConsManager   85% 94 14 0   72% 18 5   83%
apio / managers / scons_manager.py (no class)   84% 49 8 0   0% 6 0   75%
apio / managers / unpacker.py ArchiveBase   75% 8 2 3   50% 4 2   67%
apio / managers / unpacker.py TARArchive   100% 2 0 0   100% 0 0   100%
apio / managers / unpacker.py FileUnpacker   85% 13 2 0   67% 6 2   79%
apio / managers / unpacker.py (no class)   100% 15 0 1   100% 0 0   100%
apio / profile.py RemoteConfigPolicy   100% 0 0 0   100% 0 0   100%
apio / profile.py PackageRemoteConfig   100% 0 0 0   100% 0 0   100%
apio / profile.py Profile   74% 170 45 0   54% 48 14   69%
apio / profile.py (no class)   94% 69 4 0   100% 2 0   94%
apio / scons / SConstruct (no class)   100% 2 0 0   100% 0 0   100%
apio / scons / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
apio / scons / apio_env.py ApioEnv   95% 41 2 0   100% 16 0   96%
apio / scons / apio_env.py (no class)   100% 27 0 0   100% 0 0   100%
apio / scons / plugin_base.py ArchPluginInfo   100% 0 0 0   100% 0 0   100%
apio / scons / plugin_base.py PluginBase   88% 40 5 14   75% 4 1   86%
apio / scons / plugin_base.py (no class)   100% 25 0 7   100% 0 0   100%
apio / scons / plugin_ecp5.py PluginEcp5   100% 34 0 0   100% 0 0   100%
apio / scons / plugin_ecp5.py (no class)   100% 16 0 0   100% 0 0   100%
apio / scons / plugin_gowin.py PluginGowin   100% 31 0 0   100% 0 0   100%
apio / scons / plugin_gowin.py (no class)   100% 16 0 0   100% 0 0   100%
apio / scons / plugin_ice40.py PluginIce40   100% 31 0 0   100% 0 0   100%
apio / scons / plugin_ice40.py (no class)   100% 16 0 0   100% 0 0   100%
apio / scons / plugin_util.py SimulationConfig   100% 0 0 0   100% 0 0   100%
apio / scons / plugin_util.py (no class)   85% 272 40 0   74% 76 12   83%
apio / scons / scons_handler.py SconsHandler   91% 119 11 0   83% 24 4   90%
apio / scons / scons_handler.py (no class)   100% 37 0 0   100% 0 0   100%
apio / utils / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
apio / utils / cmd_util.py ApioOption   100% 2 0 0   100% 0 0   100%
apio / utils / cmd_util.py ApioSubgroup   100% 0 0 0   100% 0 0   100%
apio / utils / cmd_util.py ApioGroup   97% 35 1 0   100% 14 0   98%
apio / utils / cmd_util.py ApioCommand   100% 2 0 0   100% 0 0   100%
apio / utils / cmd_util.py ApioCmdContext   100% 7 0 0   100% 2 0   100%
apio / utils / cmd_util.py (no class)   90% 97 10 0   83% 24 0   88%
apio / utils / env_options.py (no class)   96% 26 1 0   88% 8 1   94%
apio / utils / jsonc.py _State   100% 0 0 0   100% 0 0   100%
apio / utils / jsonc.py _Action   100% 0 0 0   100% 0 0   100%
apio / utils / jsonc.py _Transition   100% 0 0 0   100% 0 0   100%
apio / utils / jsonc.py (no class)   100% 41 0 0   92% 12 1   98%
apio / utils / resource_util.py ProjectResources   100% 0 0 0   100% 0 0   100%
apio / utils / resource_util.py (no class)   62% 94 36 0   59% 22 9   61%
apio / utils / serial_util.py SerialDevice   100% 3 0 0   100% 0 0   100%
apio / utils / serial_util.py SerialDeviceFilter   100% 42 0 0   100% 22 0   100%
apio / utils / serial_util.py (no class)   82% 49 9 0   50% 14 5   75%
apio / utils / usb_util.py UsbDevice   100% 3 0 0   100% 0 0   100%
apio / utils / usb_util.py UsbDeviceFilter   100% 35 0 0   100% 18 0   100%
apio / utils / usb_util.py (no class)   58% 89 37 0   29% 24 7   52%
apio / utils / util.py ApioException   100% 0 0 0   100% 0 0   100%
apio / utils / util.py AsyncPipe   87% 31 4 0   70% 10 3   83%
apio / utils / util.py TerminalMode   100% 0 0 0   100% 0 0   100%
apio / utils / util.py CommandResult   100% 0 0 0   100% 0 0   100%
apio / utils / util.py (no class)   88% 189 23 0   76% 46 11   86%
tests / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
tests / conftest.py ApioResult   100% 0 0 0   100% 0 0   100%
tests / conftest.py ApioSandbox   96% 83 3 0   100% 18 0   97%
tests / conftest.py ApioRunner   94% 64 4 0   50% 4 2   91%
tests / conftest.py (no class)   100% 57 0 0   100% 0 0   100%
tests / first_test.py (no class)   100% 6 0 0   100% 0 0   100%
tests / integration_tests / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
tests / integration_tests / test_projects.py (no class)   100% 150 0 0   100% 4 0   100%
tests / unit_tests / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
tests / unit_tests / commands / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio.py (no class)   100% 20 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_api.py (no class)   100% 120 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_boards.py (no class)   100% 45 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_build.py (no class)   100% 45 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_clean.py (no class)   100% 51 0 0   100% 4 0   100%
tests / unit_tests / commands / test_apio_create.py (no class)   100% 35 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_devices.py (no class)   100% 17 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_drivers.py (no class)   100% 9 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_examples.py (no class)   100% 43 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_format.py (no class)   100% 13 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_fpgas.py (no class)   100% 37 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_graph.py (no class)   100% 13 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_info.py (no class)   100% 42 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_lint.py (no class)   100% 13 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_packages.py (no class)   100% 52 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_preferences.py (no class)   100% 32 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_raw.py (no class)   100% 24 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_report.py (no class)   100% 13 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_sim.py (no class)   100% 12 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_test.py (no class)   100% 13 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_upgrade.py (no class)   100% 7 0 0   100% 0 0   100%
tests / unit_tests / commands / test_apio_upload.py (no class)   100% 13 0 0   100% 0 0   100%
tests / unit_tests / commands / test_shortcuts.py (no class)   100% 20 0 0   100% 0 0   100%
tests / unit_tests / common / test_apio_console.py (no class)   100% 14 0 0   100% 0 0   100%
tests / unit_tests / common / test_apio_themes.py (no class)   100% 5 0 0   100% 2 0   100%
tests / unit_tests / common / test_common_utils.py (no class)   100% 66 0 0   100% 0 0   100%
tests / unit_tests / managers / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
tests / unit_tests / managers / test_programmers.py FakeDeviceScanner   100% 7 0 0   100% 0 0   100%
tests / unit_tests / managers / test_programmers.py (no class)   100% 127 0 0   100% 0 0   100%
tests / unit_tests / managers / test_project.py (no class)   100% 71 0 0   100% 0 0   100%
tests / unit_tests / managers / test_scons_filters.py (no class)   100% 10 0 0   100% 0 0   100%
tests / unit_tests / managers / test_scons_manager.py (no class)   100% 38 0 0   100% 0 0   100%
tests / unit_tests / scons / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
tests / unit_tests / scons / test_apio_env.py (no class)   100% 23 0 0   100% 0 0   100%
tests / unit_tests / scons / test_plugin_util.py (no class)   100% 123 0 0   100% 2 0   100%
tests / unit_tests / scons / testing.py SconsHacks   100% 6 0 0   100% 0 0   100%
tests / unit_tests / scons / testing.py (no class)   100% 29 0 0   100% 8 0   100%
tests / unit_tests / test_apio_context.py (no class)   100% 35 0 0   100% 2 0   100%
tests / unit_tests / test_profile.py (no class)   100% 40 0 0   100% 0 0   100%
tests / unit_tests / test_resources.py (no class)   99% 82 1 0   96% 24 1   98%
tests / unit_tests / utils / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
tests / unit_tests / utils / test_cmd_util.py (no class)   97% 32 1 0   100% 0 0   97%
tests / unit_tests / utils / test_jsonc.py (no class)   100% 5 0 0   100% 0 0   100%
tests / unit_tests / utils / test_serial_util.py (no class)   100% 55 0 0   100% 0 0   100%
tests / unit_tests / utils / test_usb_util.py (no class)   100% 43 0 0   100% 0 0   100%
tests / unit_tests / utils / test_util.py (no class)   98% 62 1 0   100% 0 0   98%
Total     89% 6865 776 33   72% 1276 245   86%

No items found using the specified filter.