Code Coverage of pyTooling: 90%

Files Functions Classes

coverage.py v7.17.0, created at 2026-10-25 12:33 +0000

      Statements   Branches   Total
File class   coverage statements missing excluded   coverage branches partial   coverage
pyTooling/Attributes/ArgParse/Argument.py PositionalArgument   100% 5 0 0   100% 2 0   100%
pyTooling/Attributes/ArgParse/Argument.py StringArgument   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Argument.py IntegerArgument   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Argument.py FloatArgument   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Argument.py PathArgument   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Argument.py ListArgument   100% 3 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Argument.py StringListArgument   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Argument.py IntegerListArgument   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Argument.py FloatListArgument   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Argument.py PathListArgument   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Argument.py (no class)   100% 43 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Flag.py FlagArgument   100% 7 0 0   100% 4 0   100%
pyTooling/Attributes/ArgParse/Flag.py ShortFlag   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Flag.py LongFlag   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/Flag.py (no class)   100% 12 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/ValuedFlag.py ValuedFlag   100% 7 0 0   100% 4 0   100%
pyTooling/Attributes/ArgParse/ValuedFlag.py ShortValuedFlag   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/ValuedFlag.py LongValuedFlag   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/ValuedFlag.py (no class)   100% 12 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/__init__.py _HandlerMixin   100% 1 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/__init__.py CommandLineArgument   100% 5 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/__init__.py CommandGroupAttribute   0% 3 3 0   100% 0 0   0%
pyTooling/Attributes/ArgParse/__init__.py DefaultHandler   100% 2 0 0   100% 0 0   100%
pyTooling/Attributes/ArgParse/__init__.py CommandHandler   91% 11 1 0   100% 0 0   91%
pyTooling/Attributes/ArgParse/__init__.py ArgParseHelperMixin   78% 59 13 2   67% 30 6   74%
pyTooling/Attributes/ArgParse/__init__.py (no class)   100% 74 0 0   100% 8 0   100%
pyTooling/Attributes/__init__.py AttributeScopeError   100% 5 0 0   100% 0 0   100%
pyTooling/Attributes/__init__.py Attribute   89% 81 9 1   94% 64 4   91%
pyTooling/Attributes/__init__.py SimpleAttribute   100% 4 0 0   100% 0 0   100%
pyTooling/Attributes/__init__.py (no class)   100% 60 0 0   100% 0 0   100%
pyTooling/CI/__init__.py NeedDependencyError   100% 5 0 0   100% 0 0   100%
pyTooling/CI/__init__.py NeedDependencyCycleError   100% 3 0 0   100% 0 0   100%
pyTooling/CI/__init__.py AlreadyInPipelineError   100% 3 0 0   100% 0 0   100%
pyTooling/CI/__init__.py Outcome   100% 5 0 0   100% 4 0   100%
pyTooling/CI/__init__.py Base   98% 53 1 0   96% 24 1   97%
pyTooling/CI/__init__.py QualifiedNameMixin   100% 6 0 0   100% 4 0   100%
pyTooling/CI/__init__.py Rule   100% 27 0 0   100% 14 0   100%
pyTooling/CI/__init__.py RulesMixin   100% 22 0 0   100% 12 0   100%
pyTooling/CI/__init__.py DependencyMixin   98% 59 1 0   97% 38 1   98%
pyTooling/CI/__init__.py MatrixInstanceMixin   100% 14 0 0   100% 8 0   100%
pyTooling/CI/__init__.py PipelineGroup   93% 28 2 0   75% 12 1   88%
pyTooling/CI/__init__.py JobGroup   100% 36 0 0   100% 12 0   100%
pyTooling/CI/__init__.py Workflow   100% 59 0 0   100% 38 0   100%
pyTooling/CI/__init__.py Pipeline   100% 2 0 0   100% 0 0   100%
pyTooling/CI/__init__.py Matrix   100% 4 0 0   100% 0 0   100%
pyTooling/CI/__init__.py MatrixWorkflow   83% 6 1 0   50% 2 1   75%
pyTooling/CI/__init__.py Job   100% 9 0 0   100% 0 0   100%
pyTooling/CI/__init__.py MatrixJob   100% 6 0 0   100% 2 0   100%
pyTooling/CI/__init__.py Step   100% 2 0 0   100% 0 0   100%
pyTooling/CI/__init__.py (no class)   100% 241 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Argument.py CommandLineArgument   100% 15 0 1   100% 6 0   100%
pyTooling/CLIAbstraction/Argument.py ExecutableArgument   100% 12 0 0   100% 4 0   100%
pyTooling/CLIAbstraction/Argument.py DelimiterArgument   100% 3 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Argument.py NamedArgument   86% 7 1 0   50% 2 1   78%
pyTooling/CLIAbstraction/Argument.py ValuedArgument   80% 10 2 0   50% 4 2   71%
pyTooling/CLIAbstraction/Argument.py NamedAndValuedArgument   90% 10 1 0   50% 2 1   83%
pyTooling/CLIAbstraction/Argument.py NamedTupledArgument   88% 8 1 0   50% 2 1   80%
pyTooling/CLIAbstraction/Argument.py StringArgument   0% 2 2 0   100% 0 0   0%
pyTooling/CLIAbstraction/Argument.py StringListArgument   81% 16 3 0   88% 8 1   83%
pyTooling/CLIAbstraction/Argument.py PathArgument   50% 12 6 0   50% 4 2   50%
pyTooling/CLIAbstraction/Argument.py PathListArgument   81% 16 3 0   88% 8 1   83%
pyTooling/CLIAbstraction/Argument.py (no class)   100% 86 0 0   100% 2 0   100%
pyTooling/CLIAbstraction/BooleanFlag.py BooleanFlag   92% 12 1 0   50% 2 1   86%
pyTooling/CLIAbstraction/BooleanFlag.py ShortBooleanFlag   100% 4 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/BooleanFlag.py LongBooleanFlag   100% 4 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/BooleanFlag.py WindowsBooleanFlag   100% 4 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/BooleanFlag.py (no class)   100% 22 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Command.py ShortCommand   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Command.py LongCommand   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Command.py WindowsCommand   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Command.py (no class)   100% 19 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Flag.py ShortFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Flag.py LongFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Flag.py WindowsFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/Flag.py (no class)   100% 19 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/KeyValueFlag.py NamedKeyValuePairsArgument   77% 30 7 0   79% 14 3   77%
pyTooling/CLIAbstraction/KeyValueFlag.py ShortKeyValueFlag   100% 3 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/KeyValueFlag.py LongKeyValueFlag   100% 3 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/KeyValueFlag.py WindowsKeyValueFlag   100% 3 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/KeyValueFlag.py (no class)   100% 27 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/OptionalValuedFlag.py OptionalValuedFlag   90% 10 1 0   50% 2 1   83%
pyTooling/CLIAbstraction/OptionalValuedFlag.py ShortOptionalValuedFlag   100% 3 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/OptionalValuedFlag.py LongOptionalValuedFlag   100% 3 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/OptionalValuedFlag.py WindowsOptionalValuedFlag   100% 3 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/OptionalValuedFlag.py (no class)   100% 26 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedFlag.py ValuedFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedFlag.py ShortValuedFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedFlag.py LongValuedFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedFlag.py WindowsValuedFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedFlag.py (no class)   100% 20 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedFlagList.py ValuedFlagList   93% 15 1 0   83% 6 1   90%
pyTooling/CLIAbstraction/ValuedFlagList.py ShortValuedFlagList   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedFlagList.py LongValuedFlagList   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedFlagList.py WindowsValuedFlagList   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedFlagList.py (no class)   100% 27 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedTupleFlag.py ShortTupleFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedTupleFlag.py LongTupleFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedTupleFlag.py WindowsTupleFlag   100% 2 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/ValuedTupleFlag.py (no class)   100% 16 0 0   100% 0 0   100%
pyTooling/CLIAbstraction/__init__.py Environment   67% 15 5 0   60% 10 2   64%
pyTooling/CLIAbstraction/__init__.py Program   86% 100 14 0   88% 56 5   87%
pyTooling/CLIAbstraction/__init__.py Executable   40% 47 28 0   39% 18 3   40%
pyTooling/CLIAbstraction/__init__.py OutputFilteredExecutable   0% 8 8 0   100% 0 0   0%
pyTooling/CLIAbstraction/__init__.py (no class)   100% 84 0 0   100% 0 0   100%
pyTooling/CallByRef/__init__.py CallByRefParam   64% 11 4 0   50% 4 2   60%
pyTooling/CallByRef/__init__.py CallByRefBoolParam   89% 18 2 0   75% 8 2   85%
pyTooling/CallByRef/__init__.py CallByRefIntParam   92% 184 14 0   88% 64 6   91%
pyTooling/CallByRef/__init__.py (no class)   100% 56 0 0   100% 0 0   100%
pyTooling/CallGraph/__init__.py FunctionKind   100% 1 0 0   100% 0 0   100%
pyTooling/CallGraph/__init__.py CallKind   100% 1 0 0   100% 0 0   100%
pyTooling/CallGraph/__init__.py DuplicateFunctionError   100% 3 0 0   100% 0 0   100%
pyTooling/CallGraph/__init__.py Function   100% 45 0 0   100% 20 0   100%
pyTooling/CallGraph/__init__.py Call   100% 51 0 0   100% 24 0   100%
pyTooling/CallGraph/__init__.py CallGraph   100% 38 0 0   100% 22 0   100%
pyTooling/CallGraph/__init__.py (no class)   100% 87 0 0   100% 0 0   100%
pyTooling/Cartesian2D/Shapes.py Trapezium   100% 18 0 0   100% 8 0   100%
pyTooling/Cartesian2D/Shapes.py Rectangle   80% 5 1 0   75% 4 1   78%
pyTooling/Cartesian2D/Shapes.py Square   100% 3 0 0   100% 2 0   100%
pyTooling/Cartesian2D/Shapes.py (no class)   100% 15 0 0   100% 0 0   100%
pyTooling/Cartesian2D/__init__.py Point2D   98% 46 1 0   100% 18 0   98%
pyTooling/Cartesian2D/__init__.py Origin2D   100% 3 0 0   100% 0 0   100%
pyTooling/Cartesian2D/__init__.py Offset2D   98% 57 1 0   100% 24 0   99%
pyTooling/Cartesian2D/__init__.py Size2D   93% 14 1 0   100% 4 0   94%
pyTooling/Cartesian2D/__init__.py Segment2D   40% 10 6 0   50% 4 2   43%
pyTooling/Cartesian2D/__init__.py LineSegment2D   78% 9 2 0   100% 0 0   78%
pyTooling/Cartesian2D/__init__.py (no class)   100% 64 0 0   100% 0 0   100%
pyTooling/Cartesian3D/Volumes.py (no class)   100% 7 0 0   100% 0 0   100%
pyTooling/Cartesian3D/__init__.py Point3D   98% 55 1 0   100% 20 0   99%
pyTooling/Cartesian3D/__init__.py Origin3D   100% 3 0 0   100% 0 0   100%
pyTooling/Cartesian3D/__init__.py Offset3D   98% 66 1 0   100% 26 0   99%
pyTooling/Cartesian3D/__init__.py Size3D   95% 19 1 0   100% 6 0   96%
pyTooling/Cartesian3D/__init__.py Segment3D   40% 10 6 0   50% 4 2   43%
pyTooling/Cartesian3D/__init__.py LineSegment3D   33% 9 6 0   100% 0 0   33%
pyTooling/Cartesian3D/__init__.py (no class)   100% 67 0 0   100% 0 0   100%
pyTooling/Common/__init__.py StringEnum   100% 11 0 0   100% 6 0   100%
pyTooling/Common/__init__.py ChangeDirectory   86% 7 1 0   50% 2 1   78%
pyTooling/Common/__init__.py (no class)   95% 183 9 0   92% 60 3   94%
pyTooling/Configuration/JSON.py Node   92% 120 9 1   90% 52 5   92%
pyTooling/Configuration/JSON.py Dictionary   100% 10 0 0   100% 0 0   100%
pyTooling/Configuration/JSON.py Dictionary.__iter__.Iterator   100% 4 0 1   100% 0 0   100%
pyTooling/Configuration/JSON.py Sequence   100% 8 0 0   100% 0 0   100%
pyTooling/Configuration/JSON.py Sequence.__iter__.Iterator   100% 7 0 1   100% 2 0   100%
pyTooling/Configuration/JSON.py Configuration   100% 21 0 0   100% 8 0   100%
pyTooling/Configuration/JSON.py (no class)   100% 47 0 1   100% 0 0   100%
pyTooling/Configuration/YAML.py Node   96% 122 5 1   93% 54 4   95%
pyTooling/Configuration/YAML.py Dictionary   100% 10 0 0   100% 0 0   100%
pyTooling/Configuration/YAML.py Dictionary.__iter__.Iterator   100% 4 0 1   100% 0 0   100%
pyTooling/Configuration/YAML.py Sequence   100% 8 0 0   100% 0 0   100%
pyTooling/Configuration/YAML.py Sequence.__iter__.Iterator   100% 7 0 1   100% 2 0   100%
pyTooling/Configuration/YAML.py Configuration   100% 15 0 0   100% 6 0   100%
pyTooling/Configuration/YAML.py (no class)   100% 50 0 3   100% 0 0   100%
pyTooling/Configuration/__init__.py KeyNotFoundError   100% 4 0 0   100% 0 0   100%
pyTooling/Configuration/__init__.py UnsupportedValueTypeError   100% 6 0 0   100% 2 0   100%
pyTooling/Configuration/__init__.py InterpolationError   100% 5 0 0   100% 0 0   100%
pyTooling/Configuration/__init__.py PathExpressionError   100% 3 0 0   100% 0 0   100%
pyTooling/Configuration/__init__.py Node   100% 2 0 3   100% 0 0   100%
pyTooling/Configuration/__init__.py Dictionary   100% 11 0 0   100% 4 0   100%
pyTooling/Configuration/__init__.py Sequence   89% 9 1 1   100% 4 0   92%
pyTooling/Configuration/__init__.py Configuration   100% 3 0 0   100% 0 0   100%
pyTooling/Configuration/__init__.py (no class)   100% 92 0 0   100% 0 0   100%
pyTooling/ControlFlow/__init__.py BlockKind   100% 1 0 0   100% 0 0   100%
pyTooling/ControlFlow/__init__.py EdgeKind   100% 1 0 0   100% 0 0   100%
pyTooling/ControlFlow/__init__.py DuplicateBlockError   100% 5 0 0   100% 0 0   100%
pyTooling/ControlFlow/__init__.py DuplicateEdgeError   100% 3 0 0   100% 0 0   100%
pyTooling/ControlFlow/__init__.py BaseWithCountAndValue   100% 16 0 0   100% 6 0   100%
pyTooling/ControlFlow/__init__.py BasicBlock   100% 42 0 0   100% 22 0   100%
pyTooling/ControlFlow/__init__.py Edge   100% 45 0 0   100% 22 0   100%
pyTooling/ControlFlow/__init__.py ControlFlowGraph   100% 53 0 0   100% 28 0   100%
pyTooling/ControlFlow/__init__.py (no class)   100% 116 0 0   100% 0 0   100%
pyTooling/DataModel/__init__.py KeyValuePairsMixin   100% 15 0 0   100% 4 0   100%
pyTooling/DataModel/__init__.py (no class)   100% 21 0 0   100% 0 0   100%
pyTooling/Decorators/__init__.py readonly   100% 8 0 16   100% 0 0   100%
pyTooling/Decorators/__init__.py (no class)   94% 82 5 7   81% 26 5   91%
pyTooling/Dependency/Python.py RequirementsFile   100% 128 0 0   100% 60 0   100%
pyTooling/Dependency/Python.py RequirementsFileReference   100% 25 0 0   100% 12 0   100%
pyTooling/Dependency/Python.py LicenseOverrides   92% 73 6 3   100% 24 0   94%
pyTooling/Dependency/Python.py lazy   100% 17 0 0   100% 8 0   100%
pyTooling/Dependency/Python.py LazyLoadableMixin   83% 6 1 0   100% 2 0   88%
pyTooling/Dependency/Python.py Distribution   32% 22 15 0   38% 8 3   33%
pyTooling/Dependency/Python.py Release   89% 132 14 0   88% 76 3   89%
pyTooling/Dependency/Python.py Project   86% 73 10 0   82% 28 5   85%
pyTooling/Dependency/Python.py PythonPackageIndex   79% 57 12 0   57% 14 2   75%
pyTooling/Dependency/Python.py PythonPackageDependencyGraph   100% 1 0 0   100% 0 0   100%
pyTooling/Dependency/Python.py (no class)   100% 236 0 6   100% 0 0   100%
pyTooling/Dependency/Resolver.py ResolvedRequirement   60% 48 19 0   55% 22 8   59%
pyTooling/Dependency/Resolver.py Resolution   38% 16 10 0   20% 10 2   31%
pyTooling/Dependency/Resolver.py Resolver   96% 256 9 0   98% 142 3   97%
pyTooling/Dependency/Resolver.py CurrentEnvironmentResolver   100% 1 0 0   100% 0 0   100%
pyTooling/Dependency/Resolver.py (no class)   100% 120 0 4   100% 0 0   100%
pyTooling/Dependency/__init__.py NoSessionAvailableError   100% 5 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py RequirementsFileNotFoundError   100% 3 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py CircularRequirementsFileError   100% 7 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py ProjectNotFoundError   100% 3 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py ReleaseNotFoundError   100% 5 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py PackageIndexError   100% 5 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py ExtraNotFoundError   86% 7 1 0   100% 0 0   86%
pyTooling/Dependency/__init__.py UnparsableRequirementWarning   100% 7 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py UndeclaredExtraWarning   100% 7 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py UndeclaredExtraMarkerWarning   100% 5 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py UnknownLicenseWarning   100% 5 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py ReleaseDetailsWarning   100% 5 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py UnresolvedRequirementWarning   100% 5 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py PackageIndexFailureWarning   100% 7 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py ResolutionTimeoutWarning   100% 5 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py UnsupportedVersionWarning   100% 5 0 0   100% 0 0   100%
pyTooling/Dependency/__init__.py PackageVersion   81% 117 22 0   82% 62 9   82%
pyTooling/Dependency/__init__.py Package   57% 47 20 0   50% 22 3   55%
pyTooling/Dependency/__init__.py PackageStorage   70% 30 9 0   62% 8 3   68%
pyTooling/Dependency/__init__.py PackageDependencyGraph   82% 34 6 0   92% 24 2   86%
pyTooling/Dependency/__init__.py (no class)   100% 288 0 3   100% 0 0   100%
pyTooling/Diagram/Gantt.py Bar   97% 34 1 0   92% 12 1   96%
pyTooling/Diagram/Gantt.py Row   100% 34 0 0   100% 12 0   100%
pyTooling/Diagram/Gantt.py Diagram   100% 22 0 0   100% 8 0   100%
pyTooling/Diagram/Gantt.py (no class)   100% 86 0 0   100% 0 0   100%
pyTooling/Diagram/__init__.py (no class)   100% 4 0 0   100% 0 0   100%
pyTooling/Documentation/__init__.py (no class)   100% 21 0 0   100% 4 0   100%
pyTooling/Exceptions/__init__.py OverloadResolutionError   0% 2 2 0   100% 0 0   0%
pyTooling/Exceptions/__init__.py ExceptionBase   50% 4 2 0   100% 0 0   50%
pyTooling/Exceptions/__init__.py ToolingException   0% 2 2 0   100% 0 0   0%
pyTooling/Exceptions/__init__.py MissingDependencyError   100% 11 0 0   100% 4 0   100%
pyTooling/Exceptions/__init__.py (no class)   84% 63 10 0   0% 4 0   79%
pyTooling/Filesystem/Docker.py Layer   59% 37 15 0   50% 14 1   57%
pyTooling/Filesystem/Docker.py LayerCake   62% 47 18 0   45% 20 3   57%
pyTooling/Filesystem/Docker.py (no class)   100% 57 0 0   100% 0 0   100%
pyTooling/Filesystem/__init__.py PermissionWarning   100% 3 0 0   100% 0 0   100%
pyTooling/Filesystem/__init__.py Base   48% 21 11 0   50% 10 5   48%
pyTooling/Filesystem/__init__.py Element   62% 37 14 0   62% 16 6   62%
pyTooling/Filesystem/__init__.py Directory   71% 180 53 0   63% 82 14   68%
pyTooling/Filesystem/__init__.py Filename   50% 52 26 0   54% 24 5   51%
pyTooling/Filesystem/__init__.py SymbolicLink   36% 39 25 0   36% 14 5   36%
pyTooling/Filesystem/__init__.py Root   64% 84 30 0   69% 36 5   66%
pyTooling/Filesystem/__init__.py File   66% 35 12 0   62% 16 6   65%
pyTooling/Filesystem/__init__.py (no class)   100% 209 0 0   100% 0 0   100%
pyTooling/GenericPath/URL.py Protocols   100% 1 0 0   100% 0 0   100%
pyTooling/GenericPath/URL.py Host   96% 28 1 0   100% 14 0   98%
pyTooling/GenericPath/URL.py URL   85% 136 21 0   87% 60 8   85%
pyTooling/GenericPath/URL.py (no class)   100% 96 0 0   100% 0 0   100%
pyTooling/GenericPath/__init__.py Base   100% 1 0 0   100% 0 0   100%
pyTooling/GenericPath/__init__.py RootMixin   100% 1 0 0   100% 0 0   100%
pyTooling/GenericPath/__init__.py ElementMixin   100% 3 0 0   100% 0 0   100%
pyTooling/GenericPath/__init__.py PathMixin   98% 42 1 0   95% 20 1   97%
pyTooling/GenericPath/__init__.py (no class)   100% 34 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py AttributeContext   100% 1 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py AttributeTypes   100% 1 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py EdgeDefault   100% 1 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py ParsingOrder   100% 1 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py IDStyle   100% 1 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py Base   100% 1 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py BaseWithID   100% 3 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py BaseWithData   100% 5 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py Key   92% 12 1 0   100% 0 0   92%
pyTooling/Graph/GraphML.py Data   100% 13 0 0   100% 0 0   100%
pyTooling/Graph/GraphML.py Node   100% 12 0 0   100% 4 0   100%
pyTooling/Graph/GraphML.py Edge   100% 23 0 0   100% 6 0   100%
pyTooling/Graph/GraphML.py BaseGraph   91% 34 3 0   100% 6 0   92%
pyTooling/Graph/GraphML.py Graph   93% 15 1 0   100% 2 0   94%
pyTooling/Graph/GraphML.py Subgraph   85% 27 4 0   88% 8 1   86%
pyTooling/Graph/GraphML.py GraphMLDocument   95% 76 4 0   100% 34 0   96%
pyTooling/Graph/GraphML.py (no class)   100% 210 0 0   100% 0 0   100%
pyTooling/Graph/GraphViz.py GraphKind   100% 2 0 0   100% 0 0   100%
pyTooling/Graph/GraphViz.py HTMLLabel   100% 16 0 0   100% 8 0   100%
pyTooling/Graph/GraphViz.py RecordLabel   100% 52 0 0   100% 34 0   100%
pyTooling/Graph/GraphViz.py Base   100% 43 0 0   100% 24 0   100%
pyTooling/Graph/GraphViz.py DefaultAttributes   100% 13 0 0   100% 8 0   100%
pyTooling/Graph/GraphViz.py Node   100% 20 0 0   100% 12 0   100%
pyTooling/Graph/GraphViz.py Edge   100% 15 0 0   100% 6 0   100%
pyTooling/Graph/GraphViz.py BaseGraph   98% 63 1 0   100% 30 0   99%
pyTooling/Graph/GraphViz.py Subgraph   94% 16 1 0   100% 6 0   95%
pyTooling/Graph/GraphViz.py Graph   98% 126 2 0   95% 76 4   97%
pyTooling/Graph/GraphViz.py (no class)   100% 147 0 0   100% 4 0   100%
pyTooling/Graph/__init__.py DuplicateVertexError   100% 3 0 0   100% 0 0   100%
pyTooling/Graph/__init__.py DuplicateEdgeError   100% 3 0 0   100% 0 0   100%
pyTooling/Graph/__init__.py EdgeNotFoundError   100% 5 0 0   100% 0 0   100%
pyTooling/Graph/__init__.py LinkNotFoundError   100% 5 0 0   100% 0 0   100%
pyTooling/Graph/__init__.py SameGraphError   100% 3 0 0   100% 0 0   100%
pyTooling/Graph/__init__.py CycleError   100% 3 0 0   100% 0 0   100%
pyTooling/Graph/__init__.py Base   100% 5 0 0   100% 0 0   100%
pyTooling/Graph/__init__.py BaseWithIDValueAndWeight   100% 9 0 0   100% 0 0   100%
pyTooling/Graph/__init__.py BaseWithName   100% 12 0 0   100% 4 0   100%
pyTooling/Graph/__init__.py BaseWithVertices   65% 17 6 0   50% 4 2   62%
pyTooling/Graph/__init__.py Vertex   79% 477 99 0   61% 262 33   73%
pyTooling/Graph/__init__.py Vertex.ShortestPathToByHops.Node   67% 3 1 0   100% 0 0   67%
pyTooling/Graph/__init__.py Vertex.ShortestPathToByWeight.Node   80% 5 1 0   100% 0 0   80%
pyTooling/Graph/__init__.py BaseEdge   100% 26 0 0   100% 10 0   100%
pyTooling/Graph/__init__.py Edge   100% 33 0 0   100% 12 0   100%
pyTooling/Graph/__init__.py Link   97% 36 1 0   94% 16 1   96%
pyTooling/Graph/__init__.py BaseGraph   84% 308 49 2   81% 234 8   83%
pyTooling/Graph/__init__.py Subgraph   58% 12 5 0   50% 4 2   56%
pyTooling/Graph/__init__.py View   75% 4 1 0   100% 0 0   75%
pyTooling/Graph/__init__.py Component   75% 4 1 0   100% 0 0   75%
pyTooling/Graph/__init__.py Graph   97% 78 2 1   96% 46 2   97%
pyTooling/Graph/__init__.py (no class)   100% 323 0 11   100% 0 0   100%
pyTooling/Licensing/__init__.py LicenseExpressionError   100% 5 0 0   100% 0 0   100%
pyTooling/Licensing/__init__.py LicenseAbsence   0% 1 1 0   100% 0 0   0%
pyTooling/Licensing/__init__.py PythonLicenseName   0% 1 1 0   100% 0 0   0%
pyTooling/Licensing/__init__.py License   100% 42 0 2   100% 8 0   100%
pyTooling/Licensing/__init__.py LicenseExpression   89% 27 3 0   90% 10 1   89%
pyTooling/Licensing/__init__.py SPDXLicense   83% 12 2 0   75% 4 1   81%
pyTooling/Licensing/__init__.py LicenseReference   92% 25 2 0   92% 12 1   92%
pyTooling/Licensing/__init__.py ProprietaryLicense   67% 3 1 0   100% 0 0   67%
pyTooling/Licensing/__init__.py UnknownLicense   82% 11 2 0   100% 2 0   85%
pyTooling/Licensing/__init__.py LicenseException   92% 12 1 0   83% 6 1   89%
pyTooling/Licensing/__init__.py UnaryOperator   80% 25 5 0   71% 14 4   77%
pyTooling/Licensing/__init__.py OrLaterOperator   100% 3 0 0   100% 2 0   100%
pyTooling/Licensing/__init__.py BinaryOperator   82% 55 10 0   78% 32 7   80%
pyTooling/Licensing/__init__.py _LicenseExpressionParser   100% 68 0 0   100% 42 0   100%
pyTooling/Licensing/__init__.py (no class)   100% 233 0 0   100% 2 0   100%
pyTooling/LinkedList/__init__.py NotInAListError   100% 3 0 0   100% 0 0   100%
pyTooling/LinkedList/__init__.py Node   88% 130 15 0   86% 64 7   88%
pyTooling/LinkedList/__init__.py LinkedList   94% 215 12 4   97% 94 1   95%
pyTooling/LinkedList/__init__.py (no class)   100% 85 0 0   100% 0 0   100%
pyTooling/MetaClasses/__init__.py InvalidBaseClassError   100% 5 0 0   100% 0 0   100%
pyTooling/MetaClasses/__init__.py DuplicateFieldInSlotsError   100% 5 0 0   100% 0 0   100%
pyTooling/MetaClasses/__init__.py UnannotatedFieldWarning   100% 5 0 0   100% 0 0   100%
pyTooling/MetaClasses/__init__.py UnfulfilledExpectationError   100% 5 0 0   100% 0 0   100%
pyTooling/MetaClasses/__init__.py IncompatibleMetaClassError   100% 5 0 0   100% 0 0   100%
pyTooling/MetaClasses/__init__.py AbstractClassError   100% 5 0 0   100% 0 0   100%
pyTooling/MetaClasses/__init__.py ExtendedType   95% 547 29 0   92% 320 18   94%
pyTooling/MetaClasses/__init__.py (no class)   97% 197 6 1   90% 20 2   96%
pyTooling/Packaging/__init__.py DirectReferenceWarning   100% 7 0 0   100% 0 0   100%
pyTooling/Packaging/__init__.py Readme   100% 4 0 0   100% 0 0   100%
pyTooling/Packaging/__init__.py VersionInformation   93% 15 1 0   100% 0 0   93%
pyTooling/Packaging/__init__.py (no class)   85% 331 51 11   74% 144 29   81%
pyTooling/Platform/__init__.py UnknownPlatformError   100% 9 0 0   100% 0 0   100%
pyTooling/Platform/__init__.py Platform   70% 165 49 36   62% 98 21   67%
pyTooling/Platform/__init__.py (no class)   100% 143 0 0   100% 0 0   100%
pyTooling/Process/__init__.py MemoryInfo   100% 5 0 0   100% 0 0   100%
pyTooling/Process/__init__.py ProcessInformation   79% 38 8 0   50% 4 2   76%
pyTooling/Process/__init__.py (no class)   94% 48 3 0   83% 18 3   91%
pyTooling/REST/__init__.py MediaType   100% 8 0 0   100% 4 0   100%
pyTooling/REST/__init__.py RESTClient   99% 170 2 0   96% 82 3   98%
pyTooling/REST/__init__.py (no class)   100% 54 0 0   100% 0 0   100%
pyTooling/Stopwatch/__init__.py ExcludeContextManager   100% 4 0 0   100% 0 0   100%
pyTooling/Stopwatch/__init__.py Stopwatch   98% 177 4 0   96% 76 3   97%
pyTooling/Stopwatch/__init__.py (no class)   100% 87 0 0   100% 0 0   100%
pyTooling/TerminalUI/__init__.py TerminalBaseApplication   88% 154 19 8   71% 42 8   84%
pyTooling/TerminalUI/__init__.py Severity   100% 37 0 0   100% 12 0   100%
pyTooling/TerminalUI/__init__.py Line   100% 12 0 0   100% 0 0   100%
pyTooling/TerminalUI/__init__.py ILineTerminal   0% 35 35 0   0% 22 0   0%
pyTooling/TerminalUI/__init__.py TerminalApplication   55% 144 65 4   43% 68 5   51%
pyTooling/TerminalUI/__init__.py TerminalApplicationProtocol   0% 22 22 0   100% 0 0   0%
pyTooling/TerminalUI/__init__.py (no class)   100% 241 0 2   100% 0 0   100%
pyTooling/Testing/PyTest.py MarkedUnitTestCase   0% 10 10 0   0% 6 0   0%
pyTooling/Testing/PyTest.py (no class)   96% 74 3 0   86% 28 2   93%
pyTooling/Testing/ReportWriter.py TestReportWriter   100% 42 0 0   100% 22 0   100%
pyTooling/Testing/ReportWriter.py (no class)   100% 29 0 0   100% 2 0   100%
pyTooling/Testing/__init__.py ApplicationTestcase   100% 22 0 0   100% 12 0   100%
pyTooling/Testing/__init__.py (no class)   100% 75 0 3   100% 12 0   100%
pyTooling/Timeout/__init__.py TimeoutExpiredError   100% 5 0 0   100% 0 0   100%
pyTooling/Timeout/__init__.py Timeout   100% 45 0 0   100% 22 0   100%
pyTooling/Timeout/__init__.py (no class)   100% 44 0 0   100% 0 0   100%
pyTooling/Tracing/CI/__init__.py SetAttributesMixin   0% 3 3 0   0% 4 0   0%
pyTooling/Tracing/CI/__init__.py PipelineTrace   0% 5 5 0   0% 2 0   0%
pyTooling/Tracing/CI/__init__.py TaskSpan   0% 5 5 0   0% 2 0   0%
pyTooling/Tracing/CI/__init__.py JobSpan   0% 4 4 0   0% 2 0   0%
pyTooling/Tracing/CI/__init__.py StepSpan   0% 4 4 0   0% 2 0   0%
pyTooling/Tracing/CI/__init__.py (no class)   100% 78 0 0   100% 0 0   100%
pyTooling/Tracing/Render/Matplotlib.py MatplotlibRenderer   93% 106 7 0   94% 32 2   93%
pyTooling/Tracing/Render/Matplotlib.py (no class)   100% 50 0 2   100% 0 0   100%
pyTooling/Tracing/Render/__init__.py GanttBar   100% 5 0 0   100% 0 0   100%
pyTooling/Tracing/Render/__init__.py GanttRow   90% 10 1 0   100% 0 0   90%
pyTooling/Tracing/Render/__init__.py CategoryStatistics   100% 18 0 0   100% 0 0   100%
pyTooling/Tracing/Render/__init__.py GanttLayout   93% 89 6 0   93% 42 3   93%
pyTooling/Tracing/Render/__init__.py Renderer   75% 53 13 0   83% 18 3   77%
pyTooling/Tracing/Render/__init__.py (no class)   100% 193 0 0   100% 26 0   100%
pyTooling/Tracing/__init__.py TraceElement   75% 16 4 0   67% 6 2   73%
pyTooling/Tracing/__init__.py Event   100% 16 0 0   100% 8 0   100%
pyTooling/Tracing/__init__.py Span   90% 181 18 0   92% 76 6   91%
pyTooling/Tracing/__init__.py Trace   100% 47 0 0   100% 6 0   100%
pyTooling/Tracing/__init__.py (no class)   100% 231 0 0   100% 28 0   100%
pyTooling/Tree/__init__.py AlreadyInTreeError   100% 3 0 0   100% 0 0   100%
pyTooling/Tree/__init__.py NotInSameTreeError   100% 3 0 0   100% 0 0   100%
pyTooling/Tree/__init__.py NotAChildError   100% 3 0 0   100% 0 0   100%
pyTooling/Tree/__init__.py Node   93% 300 22 6   90% 166 5   92%
pyTooling/Tree/__init__.py (no class)   100% 110 0 0   100% 0 0   100%
pyTooling/Versioning/__init__.py VersionValidatorError   100% 3 0 0   100% 0 0   100%
pyTooling/Versioning/__init__.py ReleaseLevel   30% 60 42 0   38% 34 9   33%
pyTooling/Versioning/__init__.py Version   98% 326 8 0   96% 196 8   97%
pyTooling/Versioning/__init__.py SemanticVersion   97% 94 3 8   95% 44 2   96%
pyTooling/Versioning/__init__.py PythonVersion   100% 61 0 10   100% 28 0   100%
pyTooling/Versioning/__init__.py CalendarVersion   97% 67 2 0   93% 30 2   96%
pyTooling/Versioning/__init__.py YearMonthVersion   100% 3 0 0   100% 0 0   100%
pyTooling/Versioning/__init__.py YearWeekVersion   100% 3 0 0   100% 0 0   100%
pyTooling/Versioning/__init__.py YearReleaseVersion   100% 3 0 0   100% 0 0   100%
pyTooling/Versioning/__init__.py YearMonthDayVersion   100% 4 0 0   100% 0 0   100%
pyTooling/Versioning/__init__.py VersionRange   82% 175 32 0   88% 98 10   84%
pyTooling/Versioning/__init__.py VersionSet   74% 106 28 0   62% 40 7   71%
pyTooling/Versioning/__init__.py VersionComparison   100% 1 0 0   100% 0 0   100%
pyTooling/Versioning/__init__.py VersionConstraint   94% 49 3 0   97% 30 1   95%
pyTooling/Versioning/__init__.py RangeVersionConstraint   77% 13 3 0   75% 4 1   76%
pyTooling/Versioning/__init__.py CompatibleVersionConstraint   100% 12 0 0   100% 6 0   100%
pyTooling/Versioning/__init__.py CaretVersionConstraint   100% 8 0 0   100% 4 0   100%
pyTooling/Versioning/__init__.py TildeVersionConstraint   100% 6 0 0   100% 2 0   100%
pyTooling/Versioning/__init__.py VersionExpression   90% 71 7 0   91% 32 3   90%
pyTooling/Versioning/__init__.py (no class)   99% 398 3 0   86% 28 4   98%
pyTooling/Warning/__init__.py CriticalWarning   0% 2 2 0   100% 0 0   0%
pyTooling/Warning/__init__.py Warning   0% 2 2 0   100% 0 0   0%
pyTooling/Warning/__init__.py WarningCollector   77% 53 12 0   82% 28 5   79%
pyTooling/Warning/__init__.py SupervisedWarningCollector   86% 21 3 0   67% 12 4   79%
pyTooling/Warning/__init__.py SupervisedThreadError   100% 4 0 0   100% 0 0   100%
pyTooling/Warning/__init__.py ThreadSupervisor   85% 27 4 0   100% 8 0   89%
pyTooling/Warning/__init__.py (no class)   100% 84 0 0   100% 0 0   100%
Total     92% 16641 1381 190   85% 5106 424   90%

No items found using the specified filter.

136 empty classes skipped.