Coverage report: 87%

Files Functions Classes

coverage.py v7.15.2, created at 2026-07-25 07:38 +0000

File class   statements missing excluded   coverage
src/birdplan/__init__.py BirdPlan   295 88 6   70%
src/birdplan/__init__.py (no class)   66 1 0   98%
src/birdplan/__main__.py (no class)   6 6 0   0%
src/birdplan/bgpq3.py BGPQ3   90 9 4   90%
src/birdplan/bgpq3.py (no class)   24 0 0   100%
src/birdplan/bird_config/__init__.py BirdConfig   23 10 0   57%
src/birdplan/bird_config/__init__.py (no class)   48 0 0   100%
src/birdplan/bird_config/config_parser.py ConfigParser   3 1 0   67%
src/birdplan/bird_config/config_parser.py (no class)   8 0 0   100%
src/birdplan/bird_config/globals.py BirdConfigGlobals   12 0 0   100%
src/birdplan/bird_config/globals.py (no class)   8 0 0   100%
src/birdplan/bird_config/sections/__init__.py Sections   25 0 0   100%
src/birdplan/bird_config/sections/__init__.py (no class)   30 0 0   100%
src/birdplan/bird_config/sections/base.py SectionBaseConfig   35 4 0   89%
src/birdplan/bird_config/sections/base.py SectionBase   8 0 0   100%
src/birdplan/bird_config/sections/base.py (no class)   27 0 0   100%
src/birdplan/bird_config/sections/bird_attributes.py SectionBirdAttributes   2 0 0   100%
src/birdplan/bird_config/sections/bird_attributes.py (no class)   5 0 0   100%
src/birdplan/bird_config/sections/constants.py SectionConstants   56 2 0   96%
src/birdplan/bird_config/sections/constants.py (no class)   13 0 0   100%
src/birdplan/bird_config/sections/functions.py BirdVariable   0 0 0   100%
src/birdplan/bird_config/sections/functions.py BirdFunction   27 4 0   85%
src/birdplan/bird_config/sections/functions.py SectionFunctions   24 1 0   96%
src/birdplan/bird_config/sections/functions.py (no class)   49 0 1   100%
src/birdplan/bird_config/sections/log.py SectionLogging   10 1 0   90%
src/birdplan/bird_config/sections/log.py (no class)   6 0 0   100%
src/birdplan/bird_config/sections/main.py SectionMain   9 0 0   100%
src/birdplan/bird_config/sections/main.py (no class)   6 0 0   100%
src/birdplan/bird_config/sections/protocols/__init__.py SectionProtocols   29 0 0   100%
src/birdplan/bird_config/sections/protocols/__init__.py (no class)   32 0 0   100%
src/birdplan/bird_config/sections/protocols/base.py SectionProtocolBase   9 0 0   100%
src/birdplan/bird_config/sections/protocols/base.py (no class)   17 0 0   100%
src/birdplan/bird_config/sections/protocols/base_protocol_functions.py ProtocolFunctionsBase   8 0 0   100%
src/birdplan/bird_config/sections/protocols/base_protocol_functions.py (no class)   11 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/__init__.py ProtocolBGP   365 15 0   96%
src/birdplan/bird_config/sections/protocols/bgp/__init__.py (no class)   65 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/bgp_attributes.py BGPRoutePolicyAccept   6 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/bgp_attributes.py BGPRoutePolicyImport   7 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/bgp_attributes.py BGPPeertypeConstraints   32 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/bgp_attributes.py BGPAttributes   10 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/bgp_attributes.py (no class)   10 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/bgp_config_parser.py BGPConfigParser   236 54 0   77%
src/birdplan/bird_config/sections/protocols/bgp/bgp_config_parser.py (no class)   19 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/bgp_functions.py BGPFunctions   168 3 0   98%
src/birdplan/bird_config/sections/protocols/bgp/bgp_functions.py (no class)   338 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/bgp_types.py (no class)   3 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/__init__.py ProtocolBGPPeer   1660 102 0   94%
src/birdplan/bird_config/sections/protocols/bgp/peer/__init__.py (no class)   326 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/actions.py BGPPeerActionType   0 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/actions.py BGPPeerAction   193 65 0   66%
src/birdplan/bird_config/sections/protocols/bgp/peer/actions.py BGPPeerActions   24 1 0   96%
src/birdplan/bird_config/sections/protocols/bgp/peer/actions.py (no class)   56 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerImportPrefixLimitAction   0 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerCommunitiesOutgoing   17 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerCommunities   2 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerLargeCommunitiesOutgoing   17 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerLargeCommunities   2 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerPrependItem   1 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerPrepend   17 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerRoutePolicyAccept   4 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerImportFilterDenyPolicy   3 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerImportFilterPolicy   7 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerExportFilterPolicy   2 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerLocation   2 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerRoutePolicyRedistribute   17 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerConstraints   21 0 0   100%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py BGPPeerAttributes   54 4 0   93%
src/birdplan/bird_config/sections/protocols/bgp/peer/peer_attributes.py (no class)   54 0 0   100%
src/birdplan/bird_config/sections/protocols/device.py ProtocolDevice   10 0 0   100%
src/birdplan/bird_config/sections/protocols/device.py (no class)   4 0 0   100%
src/birdplan/bird_config/sections/protocols/direct.py ProtocolDirect   38 0 0   100%
src/birdplan/bird_config/sections/protocols/direct.py (no class)   15 0 0   100%
src/birdplan/bird_config/sections/protocols/kernel.py ProtocolKernel   25 1 0   96%
src/birdplan/bird_config/sections/protocols/kernel.py (no class)   5 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/__init__.py ProtocolOSPF   136 5 0   96%
src/birdplan/bird_config/sections/protocols/ospf/__init__.py (no class)   39 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/area/__init__.py ProtocolOSPFArea   31 2 0   94%
src/birdplan/bird_config/sections/protocols/ospf/area/__init__.py (no class)   27 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/area/area_attributes.py OSPFAreaAttributes   5 1 0   80%
src/birdplan/bird_config/sections/protocols/ospf/area/area_attributes.py (no class)   8 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/area/interface/__init__.py ProtocolOSPFAreaInterface   65 1 0   98%
src/birdplan/bird_config/sections/protocols/ospf/area/interface/__init__.py (no class)   44 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/area/interface/interface_attributes.py OSPFAreaInterfaceAttributes   10 1 0   90%
src/birdplan/bird_config/sections/protocols/ospf/area/interface/interface_attributes.py (no class)   8 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/area/interface/ospf_area_interface_types.py (no class)   3 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/area/ospf_area_types.py (no class)   3 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/ospf_attributes.py OSPFRoutePolicyAccept   1 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/ospf_attributes.py OSPFRoutePolicyRedistribute   5 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/ospf_attributes.py OSPFAttributes   2 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/ospf_attributes.py (no class)   7 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/ospf_config_parser.py OSPFConfigParser   76 18 0   76%
src/birdplan/bird_config/sections/protocols/ospf/ospf_config_parser.py (no class)   11 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/ospf_functions.py OSPFFunctions   7 0 0   100%
src/birdplan/bird_config/sections/protocols/ospf/ospf_functions.py (no class)   16 0 0   100%
src/birdplan/bird_config/sections/protocols/pipe.py ProtocolPipeFilterType   0 0 0   100%
src/birdplan/bird_config/sections/protocols/pipe.py ProtocolPipe   54 0 0   100%
src/birdplan/bird_config/sections/protocols/pipe.py (no class)   27 0 0   100%
src/birdplan/bird_config/sections/protocols/rip/__init__.py ProtocolRIP   154 6 0   96%
src/birdplan/bird_config/sections/protocols/rip/__init__.py (no class)   34 0 0   100%
src/birdplan/bird_config/sections/protocols/rip/rip_attributes.py RIPRoutePolicyAccept   1 0 0   100%
src/birdplan/bird_config/sections/protocols/rip/rip_attributes.py RIPRoutePolicyRedistribute   7 0 0   100%
src/birdplan/bird_config/sections/protocols/rip/rip_attributes.py RIPAttributes   2 0 0   100%
src/birdplan/bird_config/sections/protocols/rip/rip_attributes.py (no class)   7 0 0   100%
src/birdplan/bird_config/sections/protocols/rip/rip_config_parser.py RIPConfigParser   51 8 0   84%
src/birdplan/bird_config/sections/protocols/rip/rip_config_parser.py (no class)   11 0 0   100%
src/birdplan/bird_config/sections/protocols/rip/rip_functions.py RIPFunctions   8 0 0   100%
src/birdplan/bird_config/sections/protocols/rip/rip_functions.py (no class)   18 0 0   100%
src/birdplan/bird_config/sections/protocols/rpki.py RPKISource   53 8 0   85%
src/birdplan/bird_config/sections/protocols/rpki.py ProtocolRPKI   60 3 0   95%
src/birdplan/bird_config/sections/protocols/rpki.py (no class)   45 0 0   100%
src/birdplan/bird_config/sections/protocols/static.py ProtocolStatic   50 1 0   98%
src/birdplan/bird_config/sections/protocols/static.py (no class)   16 0 0   100%
src/birdplan/bird_config/sections/router_id.py SectionRouterID   8 0 0   100%
src/birdplan/bird_config/sections/router_id.py (no class)   10 0 0   100%
src/birdplan/bird_config/sections/tables/__init__.py SectionTables   9 0 0   100%
src/birdplan/bird_config/sections/tables/__init__.py (no class)   12 0 0   100%
src/birdplan/bird_config/sections/tables/kernel.py TableKernel   5 0 0   100%
src/birdplan/bird_config/sections/tables/kernel.py (no class)   4 0 0   100%
src/birdplan/bird_config/sections/tables/master/__init__.py TableMaster   44 0 0   100%
src/birdplan/bird_config/sections/tables/master/__init__.py (no class)   14 0 0   100%
src/birdplan/bird_config/sections/tables/master/master_attributes.py MasterTableRoutePolicyExportKernel   4 0 0   100%
src/birdplan/bird_config/sections/tables/master/master_attributes.py MasterTableRoutePolicyExport   1 0 0   100%
src/birdplan/bird_config/sections/tables/master/master_attributes.py MasterTableAttributes   1 0 0   100%
src/birdplan/bird_config/sections/tables/master/master_attributes.py (no class)   7 0 0   100%
src/birdplan/bird_config/util.py (no class)   17 0 0   100%
src/birdplan/cmdline.py ColorFormatter   17 17 2   0%
src/birdplan/cmdline.py BirdPlanArgumentParser   1 1 0   0%
src/birdplan/cmdline.py BirdPlanCommandlineResult   7 4 0   43%
src/birdplan/cmdline.py BirdPlanCommandLine   59 21 0   64%
src/birdplan/cmdline.py (no class)   66 9 0   86%
src/birdplan/console/__init__.py (no class)   0 0 0   100%
src/birdplan/console/colors.py (no class)   8 1 0   88%
src/birdplan/exceptions.py BirdPlanError   0 0 0   100%
src/birdplan/exceptions.py BirdPlanUsageError   4 4 0   0%
src/birdplan/exceptions.py BirdPlanConfigError   0 0 0   100%
src/birdplan/exceptions.py (no class)   7 0 0   100%
src/birdplan/monitor.py (no class)   22 22 0   0%
src/birdplan/peeringdb.py PeeringDB   28 1 6   96%
src/birdplan/peeringdb.py (no class)   16 0 0   100%
src/birdplan/plugin.py PluginMethodExceptionError   0 0 0   100%
src/birdplan/plugin.py PluginNotFoundExceptionError   0 0 0   100%
src/birdplan/plugin.py Plugin   2 0 0   100%
src/birdplan/plugin.py PluginCollection   75 22 0   71%
src/birdplan/plugin.py (no class)   25 0 0   100%
src/birdplan/plugins/__init__.py (no class)   0 0 0   100%
src/birdplan/plugins/cmdline/__init__.py (no class)   0 0 0   100%
src/birdplan/plugins/cmdline/bgp/__init__.py BirdPlanCmdlineBGP   11 3 0   73%
src/birdplan/plugins/cmdline/bgp/__init__.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/bgp/peer/__init__.py BirdPlanCmdlineBGPPeer   12 3 0   75%
src/birdplan/plugins/cmdline/bgp/peer/__init__.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/bgp/peer/graceful_shutdown/__init__.py BirdPlanCmdlineBGPPeerGracefulShutdown   12 3 0   75%
src/birdplan/plugins/cmdline/bgp/peer/graceful_shutdown/__init__.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/bgp/peer/graceful_shutdown/remove.py BirdPlanCmdlineBGPPeerGracefulShutdownRemove   19 9 0   53%
src/birdplan/plugins/cmdline/bgp/peer/graceful_shutdown/remove.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/bgp/peer/graceful_shutdown/set.py BirdPlanCmdlineBGPPeerGracefulShutdownSet   24 2 0   92%
src/birdplan/plugins/cmdline/bgp/peer/graceful_shutdown/set.py (no class)   10 0 0   100%
src/birdplan/plugins/cmdline/bgp/peer/graceful_shutdown/show.py BirdPlanCmdlineBGPPeerGracefulShutdownShowResult   36 36 0   0%
src/birdplan/plugins/cmdline/bgp/peer/graceful_shutdown/show.py BirdPlanCmdlineBGPPeerGracefulShutdownShow   16 1 0   94%
src/birdplan/plugins/cmdline/bgp/peer/graceful_shutdown/show.py (no class)   13 0 2   100%
src/birdplan/plugins/cmdline/bgp/peer/quarantine/__init__.py BirdPlanCmdlineBGPPeerQuarantine   12 3 0   75%
src/birdplan/plugins/cmdline/bgp/peer/quarantine/__init__.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/bgp/peer/quarantine/remove.py BirdPlanCmdlineBGPPeerQuarantineRemove   19 9 0   53%
src/birdplan/plugins/cmdline/bgp/peer/quarantine/remove.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/bgp/peer/quarantine/set.py BirdPlanCmdlineBGPPeerQuarantineSet   20 0 4   100%
src/birdplan/plugins/cmdline/bgp/peer/quarantine/set.py (no class)   10 0 0   100%
src/birdplan/plugins/cmdline/bgp/peer/quarantine/show.py BirdPlanCmdlineBGPPeerQuarantineShowResult   36 36 0   0%
src/birdplan/plugins/cmdline/bgp/peer/quarantine/show.py BirdPlanCmdlineBGPPeerQuarantineShow   14 0 2   100%
src/birdplan/plugins/cmdline/bgp/peer/quarantine/show.py (no class)   13 0 2   100%
src/birdplan/plugins/cmdline/bgp/peer/show.py BirdPlanCmdlineBGPPeerShowPeerArgResult   108 108 0   0%
src/birdplan/plugins/cmdline/bgp/peer/show.py BirdPlanCmdlineBGPPeerShowPeerArg   17 0 2   100%
src/birdplan/plugins/cmdline/bgp/peer/show.py (no class)   13 0 2   100%
src/birdplan/plugins/cmdline/bgp/peer/summary.py BirdPlanCmdlineBGPPeerShowResult   27 27 0   0%
src/birdplan/plugins/cmdline/bgp/peer/summary.py BirdPlanCmdlineBGPPeerShow   25 6 2   76%
src/birdplan/plugins/cmdline/bgp/peer/summary.py (no class)   14 0 2   100%
src/birdplan/plugins/cmdline/cmdline_plugin.py BirdPlanCmdlinePluginBase   8 4 0   50%
src/birdplan/plugins/cmdline/cmdline_plugin.py (no class)   8 0 0   100%
src/birdplan/plugins/cmdline/configure.py BirdPlanCmdlineConfigure   41 4 2   90%
src/birdplan/plugins/cmdline/configure.py (no class)   19 0 0   100%
src/birdplan/plugins/cmdline/monitor.py BirdPlanCmdlineMonitor   30 20 2   33%
src/birdplan/plugins/cmdline/monitor.py (no class)   18 0 0   100%
src/birdplan/plugins/cmdline/ospf/__init__.py BirdPlanCmdlineOSPF   11 3 0   73%
src/birdplan/plugins/cmdline/ospf/__init__.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/ospf/interface/__init__.py BirdPlanCmdlineOSPFInterface   12 3 0   75%
src/birdplan/plugins/cmdline/ospf/interface/__init__.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/ospf/interface/cost/__init__.py BirdPlanCmdlineOSPFInterfaceCost   12 3 0   75%
src/birdplan/plugins/cmdline/ospf/interface/cost/__init__.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/ospf/interface/cost/remove.py BirdPlanCmdlineOSPFInterfaceCostRemove   21 10 0   52%
src/birdplan/plugins/cmdline/ospf/interface/cost/remove.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/ospf/interface/cost/set.py BirdPlanCmdlineOSPFInterfaceCostSet   23 1 0   96%
src/birdplan/plugins/cmdline/ospf/interface/cost/set.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/ospf/interface/ecmp_weight/__init__.py BirdPlanCmdlineOSPFInterfaceECMPWeight   12 3 0   75%
src/birdplan/plugins/cmdline/ospf/interface/ecmp_weight/__init__.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/ospf/interface/ecmp_weight/remove.py BirdPlanCmdlineOSPFInterfaceECMPWeightRemove   21 10 0   52%
src/birdplan/plugins/cmdline/ospf/interface/ecmp_weight/remove.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/ospf/interface/ecmp_weight/set.py BirdPlanCmdlineOSPFInterfaceECMPWeightSet   23 1 0   96%
src/birdplan/plugins/cmdline/ospf/interface/ecmp_weight/set.py (no class)   9 0 0   100%
src/birdplan/plugins/cmdline/ospf/interface/show.py BirdPlanCmdlineOSPFInterfaceShowResult   72 72 0   0%
src/birdplan/plugins/cmdline/ospf/interface/show.py BirdPlanCmdlineOSPFInterfaceShow   16 0 2   100%
src/birdplan/plugins/cmdline/ospf/interface/show.py (no class)   13 0 0   100%
src/birdplan/plugins/cmdline/ospf/summary.py BirdPlanCmdlineOSPFShowResult   30 30 0   0%
src/birdplan/plugins/cmdline/ospf/summary.py BirdPlanCmdlineOSPFShow   15 0 2   100%
src/birdplan/plugins/cmdline/ospf/summary.py (no class)   13 0 0   100%
src/birdplan/version.py (no class)   1 0 0   100%
src/birdplan/yaml/__init__.py (no class)   10 4 0   60%
src/birdplan/yaml/base.py YAMLBase   2 2 0   0%
src/birdplan/yaml/base.py (no class)   10 0 0   100%
src/birdplan/yaml/pyaml.py BirdPlanSafeLoader   1 0 0   100%
src/birdplan/yaml/pyaml.py BirdPlanSafeDumper   1 0 0   100%
src/birdplan/yaml/pyaml.py YAML   14 0 4   100%
src/birdplan/yaml/pyaml.py (no class)   17 0 0   100%
src/birdplan/yaml/ruamel.py YAML   7 0 4   100%
src/birdplan/yaml/ruamel.py (no class)   12 0 0   100%
Total     7531 944 53   87%

No items found using the specified filter.