Coverage report: 23%

Files Functions Classes

coverage.py v7.13.5, created at 2026-05-05 22:20 +0000

      Statements   Branches   Total
File class   coverage statements missing excluded   coverage branches partial   coverage
python / lsst / __init__.py (no class)   100% 2 0 0   100% 0 0   100%
python / lsst / daf / __init__.py (no class)   100% 2 0 0   100% 0 0   100%
python / lsst / daf / butler / __init__.py (no class)   100% 9 0 0   100% 0 0   100%
python / lsst / daf / butler / _butler.py ButlerValidationError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / _butler.py PruneCollectionsArgsError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / _butler.py PurgeWithoutUnstorePruneCollectionsError   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / _butler.py RunWithoutPurgePruneCollectionsError   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / _butler.py PurgeUnsupportedPruneCollectionsError   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / _butler.py Butler   0% 571 571 0   0% 358 0   0%
python / lsst / daf / butler / _butler.py (no class)   100% 89 0 0   100% 0 0   100%
python / lsst / daf / butler / _butlerConfig.py ButlerConfig   0% 27 27 0   0% 16 0   0%
python / lsst / daf / butler / _butlerConfig.py (no class)   100% 12 0 0   100% 0 0   100%
python / lsst / daf / butler / _butlerRepoIndex.py ButlerRepoIndex   0% 26 26 0   0% 6 0   0%
python / lsst / daf / butler / _butlerRepoIndex.py (no class)   100% 21 0 0   100% 0 0   100%
python / lsst / daf / butler / _deferredDatasetHandle.py DeferredDatasetHandle   0% 10 10 0   0% 6 0   0%
python / lsst / daf / butler / _deferredDatasetHandle.py (no class)   100% 15 0 3   100% 0 0   100%
python / lsst / daf / butler / _limited_butler.py LimitedButler   0% 10 10 0   0% 2 0   0%
python / lsst / daf / butler / _limited_butler.py (no class)   100% 28 0 0   100% 0 0   100%
python / lsst / daf / butler / _quantum_backed.py _DatasetRecordStorageManagerDatastoreConstructionMimic   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / _quantum_backed.py QuantumBackedButler   0% 77 77 0   0% 36 0   0%
python / lsst / daf / butler / _quantum_backed.py QuantumProvenanceData   0% 26 26 0   0% 10 0   0%
python / lsst / daf / butler / _quantum_backed.py (no class)   100% 55 0 2   100% 0 0   100%
python / lsst / daf / butler / cli / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / cli / butler.py LoaderCLI   2% 54 53 0   0% 24 0   1%
python / lsst / daf / butler / cli / butler.py ButlerCLI   0% 6 6 0   0% 4 0   0%
python / lsst / daf / butler / cli / butler.py (no class)   87% 62 8 0   100% 0 0   87%
python / lsst / daf / butler / cli / cliLog.py PrecisionLogFormatter   0% 7 7 0   0% 4 0   0%
python / lsst / daf / butler / cli / cliLog.py CliLog   4% 94 90 0   2% 54 1   3%
python / lsst / daf / butler / cli / cliLog.py CliLog.ComponentSettings   0% 6 6 0   0% 2 0   0%
python / lsst / daf / butler / cli / cliLog.py (no class)   96% 49 2 0   100% 0 0   96%
python / lsst / daf / butler / cli / cmd / __init__.py (no class)   100% 4 0 0   100% 0 0   100%
python / lsst / daf / butler / cli / cmd / _remove_collections.py (no class)   37% 43 27 0   0% 16 0   27%
python / lsst / daf / butler / cli / cmd / _remove_runs.py (no class)   48% 58 30 0   0% 16 0   38%
python / lsst / daf / butler / cli / cmd / commands.py (no class)   67% 300 100 0   0% 54 0   56%
python / lsst / daf / butler / cli / opt / __init__.py (no class)   100% 3 0 0   100% 0 0   100%
python / lsst / daf / butler / cli / opt / arguments.py (no class)   100% 11 0 0   100% 0 0   100%
python / lsst / daf / butler / cli / opt / optionGroups.py query_datasets_options   91% 11 1 0   88% 8 1   89%
python / lsst / daf / butler / cli / opt / optionGroups.py (no class)   100% 7 0 0   100% 0 0   100%
python / lsst / daf / butler / cli / opt / options.py CollectionTypeCallback   0% 3 3 0   0% 2 0   0%
python / lsst / daf / butler / cli / opt / options.py (no class)   100% 35 0 0   100% 0 0   100%
python / lsst / daf / butler / cli / progress.py ClickProgressHandler   17% 6 5 0   0% 2 0   12%
python / lsst / daf / butler / cli / progress.py (no class)   100% 13 0 0   100% 0 0   100%
python / lsst / daf / butler / cli / utils.py LogCliRunner   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / cli / utils.py split_kv.RetDict   0% 5 5 0   0% 2 0   0%
python / lsst / daf / butler / cli / utils.py split_kv.RetTuple   0% 5 5 0   0% 2 0   0%
python / lsst / daf / butler / cli / utils.py option_section   100% 2 0 0   100% 0 0   100%
python / lsst / daf / butler / cli / utils.py MWPath   57% 7 3 0   25% 4 1   45%
python / lsst / daf / butler / cli / utils.py MWOption   0% 6 6 0   0% 4 0   0%
python / lsst / daf / butler / cli / utils.py MWArgument   0% 4 4 0   0% 2 0   0%
python / lsst / daf / butler / cli / utils.py OptionSection   60% 5 2 0   100% 0 0   60%
python / lsst / daf / butler / cli / utils.py MWOptionDecorator   75% 8 2 0   100% 0 0   75%
python / lsst / daf / butler / cli / utils.py MWArgumentDecorator   100% 9 0 0   100% 4 0   100%
python / lsst / daf / butler / cli / utils.py MWCommand   17% 36 30 0   5% 20 1   12%
python / lsst / daf / butler / cli / utils.py ButlerCommand   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / cli / utils.py OptionGroup   100% 3 0 0   100% 2 0   100%
python / lsst / daf / butler / cli / utils.py MWCtxObj   0% 5 5 0   0% 2 0   0%
python / lsst / daf / butler / cli / utils.py (no class)   47% 219 116 0   8% 60 3   39%
python / lsst / daf / butler / core / __init__.py (no class)   100% 29 0 0   100% 0 0   100%
python / lsst / daf / butler / core / _butlerUri.py ButlerURI   0% 8 8 0   0% 2 0   0%
python / lsst / daf / butler / core / _butlerUri.py (no class)   56% 18 8 0   0% 8 0   38%
python / lsst / daf / butler / core / _topology.py TopologicalSpace   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / _topology.py TopologicalFamily   0% 8 8 0   0% 2 0   0%
python / lsst / daf / butler / core / _topology.py TopologicalRelationshipEndpoint   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / core / _topology.py TopologicalExtentDatabaseRepresentation   0% 9 9 0   100% 0 0   0%
python / lsst / daf / butler / core / _topology.py SpatialRegionDatabaseRepresentation   0% 23 23 0   0% 12 0   0%
python / lsst / daf / butler / core / _topology.py (no class)   100% 89 0 0   100% 0 0   100%
python / lsst / daf / butler / core / composites.py CompositesConfig   0% 4 4 0   0% 4 0   0%
python / lsst / daf / butler / core / composites.py CompositesMap   0% 31 31 0   0% 18 0   0%
python / lsst / daf / butler / core / composites.py (no class)   100% 19 0 6   100% 0 0   100%
python / lsst / daf / butler / core / config.py Loader   14% 29 25 0   0% 12 0   10%
python / lsst / daf / butler / core / config.py Config   34% 276 181 0   26% 154 14   31%
python / lsst / daf / butler / core / config.py ConfigSubset   65% 65 23 0   55% 40 14   61%
python / lsst / daf / butler / core / config.py (no class)   88% 112 14 0   71% 14 4   86%
python / lsst / daf / butler / core / configSupport.py LookupKey   14% 63 54 0   12% 42 5   13%
python / lsst / daf / butler / core / configSupport.py (no class)   45% 58 32 3   0% 22 0   32%
python / lsst / daf / butler / core / constraints.py ConstraintsValidationError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / constraints.py ConstraintsConfig   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / constraints.py Constraints   0% 32 32 0   0% 18 0   0%
python / lsst / daf / butler / core / constraints.py (no class)   100% 20 0 4   100% 0 0   100%
python / lsst / daf / butler / core / datasets / __init__.py (no class)   100% 3 0 0   100% 0 0   100%
python / lsst / daf / butler / core / datasets / association.py DatasetAssociation   0% 3 3 0   0% 2 0   0%
python / lsst / daf / butler / core / datasets / association.py (no class)   100% 15 0 0   100% 0 0   100%
python / lsst / daf / butler / core / datasets / ref.py AmbiguousDatasetError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / datasets / ref.py PositiveInt   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / datasets / ref.py SerializedDatasetRef   0% 18 18 0   0% 6 0   0%
python / lsst / daf / butler / core / datasets / ref.py DatasetRef   0% 89 89 1   0% 50 0   0%
python / lsst / daf / butler / core / datasets / ref.py (no class)   100% 71 0 2   100% 0 0   100%
python / lsst / daf / butler / core / datasets / type.py SerializedDatasetType   0% 9 9 0   100% 0 0   0%
python / lsst / daf / butler / core / datasets / type.py DatasetType   0% 141 141 0   0% 90 0   0%
python / lsst / daf / butler / core / datasets / type.py (no class)   94% 67 4 3   0% 2 0   91%
python / lsst / daf / butler / core / datastore.py DatastoreConfig   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / datastore.py DatastoreValidationError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / datastore.py Event   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / datastore.py IngestPrepData   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / core / datastore.py DatastoreTransaction   0% 23 23 0   0% 4 0   0%
python / lsst / daf / butler / core / datastore.py DatasetRefURIs   0% 11 11 0   0% 4 0   0%
python / lsst / daf / butler / core / datastore.py Datastore   0% 84 84 0   0% 26 0   0%
python / lsst / daf / butler / core / datastore.py (no class)   100% 117 0 7   100% 0 0   100%
python / lsst / daf / butler / core / datastoreCacheManager.py CacheEntry   0% 6 6 0   0% 2 0   0%
python / lsst / daf / butler / core / datastoreCacheManager.py _MarkerEntry   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / datastoreCacheManager.py CacheRegistry   0% 38 38 0   0% 18 0   0%
python / lsst / daf / butler / core / datastoreCacheManager.py DatastoreCacheManagerConfig   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / datastoreCacheManager.py AbstractDatastoreCacheManager   0% 12 12 0   0% 2 0   0%
python / lsst / daf / butler / core / datastoreCacheManager.py DatastoreCacheManager   0% 179 179 0   0% 88 0   0%
python / lsst / daf / butler / core / datastoreCacheManager.py DatastoreDisabledCacheManager   0% 7 7 0   100% 0 0   0%
python / lsst / daf / butler / core / datastoreCacheManager.py (no class)   91% 127 12 5   100% 0 0   91%
python / lsst / daf / butler / core / datastoreRecordData.py SerializedDatastoreRecordData   0% 10 10 0   0% 8 0   0%
python / lsst / daf / butler / core / datastoreRecordData.py DatastoreRecordData   0% 33 33 0   0% 24 0   0%
python / lsst / daf / butler / core / datastoreRecordData.py (no class)   100% 29 0 2   100% 0 0   100%
python / lsst / daf / butler / core / ddl.py SchemaValidationError   50% 8 4 0   100% 0 0   50%
python / lsst / daf / butler / core / ddl.py Base64Bytes   0% 10 10 0   0% 4 0   0%
python / lsst / daf / butler / core / ddl.py Base64Region   0% 7 7 0   0% 4 0   0%
python / lsst / daf / butler / core / ddl.py AstropyTimeNsecTai   0% 10 10 0   0% 6 0   0%
python / lsst / daf / butler / core / ddl.py GUID   0% 19 19 0   0% 16 0   0%
python / lsst / daf / butler / core / ddl.py FieldSpec   6% 36 34 0   9% 22 0   7%
python / lsst / daf / butler / core / ddl.py ForeignKeySpec   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / core / ddl.py TableSpec   88% 8 1 0   100% 0 0   88%
python / lsst / daf / butler / core / ddl.py (no class)   100% 114 0 2   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / __init__.py (no class)   100% 13 0 0   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _config.py DimensionConfig   0% 51 51 0   0% 26 0   0%
python / lsst / daf / butler / core / dimensions / _config.py (no class)   100% 24 0 0   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _coordinate.py SerializedDataCoordinate   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _coordinate.py DataCoordinate   0% 114 114 0   0% 62 0   0%
python / lsst / daf / butler / core / dimensions / _coordinate.py _DataCoordinateFullView   0% 8 8 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _coordinate.py _DataCoordinateRecordsView   0% 11 11 0   0% 2 0   0%
python / lsst / daf / butler / core / dimensions / _coordinate.py _BasicTupleDataCoordinate   0% 36 36 0   0% 20 0   0%
python / lsst / daf / butler / core / dimensions / _coordinate.py _ExpandedTupleDataCoordinate   0% 28 28 0   0% 12 0   0%
python / lsst / daf / butler / core / dimensions / _coordinate.py (no class)   96% 123 5 3   0% 4 0   93%
python / lsst / daf / butler / core / dimensions / _dataCoordinateIterable.py DataCoordinateIterable   0% 12 12 0   0% 2 0   0%
python / lsst / daf / butler / core / dimensions / _dataCoordinateIterable.py _ScalarDataCoordinateIterable   0% 10 10 0   0% 2 0   0%
python / lsst / daf / butler / core / dimensions / _dataCoordinateIterable.py _DataCoordinateCollectionBase   0% 33 33 0   0% 20 0   0%
python / lsst / daf / butler / core / dimensions / _dataCoordinateIterable.py DataCoordinateSet   0% 55 55 0   0% 34 0   0%
python / lsst / daf / butler / core / dimensions / _dataCoordinateIterable.py DataCoordinateSequence   0% 16 16 0   0% 6 0   0%
python / lsst / daf / butler / core / dimensions / _dataCoordinateIterable.py (no class)   100% 89 0 0   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _database.py DatabaseTopologicalFamily   0% 14 14 0   0% 6 0   0%
python / lsst / daf / butler / core / dimensions / _database.py DatabaseTopologicalFamilyConstructionVisitor   0% 12 12 0   0% 4 0   0%
python / lsst / daf / butler / core / dimensions / _database.py DatabaseDimensionElement   0% 19 19 0   0% 2 0   0%
python / lsst / daf / butler / core / dimensions / _database.py DatabaseDimension   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _database.py DatabaseDimensionCombination   0% 5 5 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _database.py DatabaseDimensionElementConstructionVisitor   0% 25 25 0   0% 12 0   0%
python / lsst / daf / butler / core / dimensions / _database.py (no class)   100% 56 0 3   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _elements.py DimensionElement   0% 50 50 0   0% 10 0   0%
python / lsst / daf / butler / core / dimensions / _elements.py Dimension   0% 5 5 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _elements.py DimensionCombination   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _elements.py (no class)   100% 66 0 6   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _governor.py GovernorDimension   0% 19 19 0   0% 4 0   0%
python / lsst / daf / butler / core / dimensions / _governor.py GovernorDimensionConstructionVisitor   0% 8 8 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _governor.py (no class)   100% 30 0 2   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _graph.py SerializedDimensionGraph   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _graph.py DimensionGraph   0% 92 92 0   0% 34 0   0%
python / lsst / daf / butler / core / dimensions / _graph.py (no class)   100% 69 0 5   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _packer.py DimensionPacker   0% 11 11 0   0% 2 0   0%
python / lsst / daf / butler / core / dimensions / _packer.py DimensionPackerFactory   0% 14 14 0   0% 6 0   0%
python / lsst / daf / butler / core / dimensions / _packer.py DimensionPackerConstructionVisitor   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _packer.py (no class)   100% 31 0 2   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _records.py SpecificSerializedDimensionRecord   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _records.py SerializedDimensionRecord   0% 7 7 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _records.py SerializedDimensionRecord.Config   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _records.py DimensionRecord   0% 65 65 0   0% 38 0   0%
python / lsst / daf / butler / core / dimensions / _records.py (no class)   61% 76 30 5   0% 14 0   51%
python / lsst / daf / butler / core / dimensions / _schema.py DimensionElementFields   0% 52 52 0   0% 24 0   0%
python / lsst / daf / butler / core / dimensions / _schema.py (no class)   64% 44 16 2   0% 6 0   56%
python / lsst / daf / butler / core / dimensions / _skypix.py SkyPixSystem   0% 17 17 0   0% 10 0   0%
python / lsst / daf / butler / core / dimensions / _skypix.py SkyPixDimension   0% 12 12 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / _skypix.py SkyPixConstructionVisitor   0% 19 19 0   0% 6 0   0%
python / lsst / daf / butler / core / dimensions / _skypix.py (no class)   100% 42 0 2   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / _universe.py DimensionUniverse   0% 87 87 0   0% 30 0   0%
python / lsst / daf / butler / core / dimensions / _universe.py (no class)   100% 67 0 4   100% 0 0   100%
python / lsst / daf / butler / core / dimensions / construction.py DimensionConstructionVisitor   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / core / dimensions / construction.py DimensionConstructionBuilder   0% 18 18 0   0% 6 0   0%
python / lsst / daf / butler / core / dimensions / construction.py (no class)   100% 31 0 4   100% 0 0   100%
python / lsst / daf / butler / core / exceptions.py DatasetTypeNotSupportedError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / exceptions.py ValidationError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / exceptions.py (no class)   100% 5 0 0   100% 0 0   100%
python / lsst / daf / butler / core / fileDataset.py FileDataset   0% 8 8 0   0% 4 0   0%
python / lsst / daf / butler / core / fileDataset.py (no class)   100% 18 0 0   100% 0 0   100%
python / lsst / daf / butler / core / fileDescriptor.py FileDescriptor   0% 18 18 0   0% 8 0   0%
python / lsst / daf / butler / core / fileDescriptor.py (no class)   100% 9 0 3   100% 0 0   100%
python / lsst / daf / butler / core / fileTemplates.py FileTemplateValidationError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / fileTemplates.py FileTemplatesConfig   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / fileTemplates.py FileTemplates   0% 58 58 0   0% 28 0   0%
python / lsst / daf / butler / core / fileTemplates.py FileTemplate   0% 145 145 0   0% 90 0   0%
python / lsst / daf / butler / core / fileTemplates.py (no class)   100% 46 0 3   100% 0 0   100%
python / lsst / daf / butler / core / formatter.py Formatter   0% 80 80 0   0% 34 0   0%
python / lsst / daf / butler / core / formatter.py FormatterFactory   0% 51 51 1   0% 24 0   0%
python / lsst / daf / butler / core / formatter.py (no class)   100% 71 0 2   100% 0 0   100%
python / lsst / daf / butler / core / json.py SupportsSimple   100% 0 0 2   100% 0 0   100%
python / lsst / daf / butler / core / json.py (no class)   45% 22 12 12   100% 0 0   45%
python / lsst / daf / butler / core / location.py Location   0% 47 47 0   0% 26 0   0%
python / lsst / daf / butler / core / location.py LocationFactory   0% 7 7 0   0% 2 0   0%
python / lsst / daf / butler / core / location.py (no class)   100% 28 0 0   100% 0 0   100%
python / lsst / daf / butler / core / logging.py MDCDict   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / core / logging.py ButlerMDC   0% 22 22 0   0% 8 0   0%
python / lsst / daf / butler / core / logging.py ButlerLogRecord   0% 19 19 0   0% 4 0   0%
python / lsst / daf / butler / core / logging.py ButlerLogRecord.Config   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / logging.py ButlerLogRecords   0% 72 72 0   0% 34 0   0%
python / lsst / daf / butler / core / logging.py ButlerLogRecordHandler   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / core / logging.py JsonLogFormatter   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / core / logging.py (no class)   100% 88 0 0   100% 0 0   100%
python / lsst / daf / butler / core / mappingFactory.py MappingFactory   0% 42 42 0   0% 14 0   0%
python / lsst / daf / butler / core / mappingFactory.py (no class)   100% 17 0 0   100% 0 0   100%
python / lsst / daf / butler / core / named.py Named   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / core / named.py NamedKeyMapping   0% 5 5 0   100% 0 0   0%
python / lsst / daf / butler / core / named.py NamedKeyMutableMapping   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / core / named.py NamedKeyDict   0% 32 32 0   0% 8 0   0%
python / lsst / daf / butler / core / named.py NamedValueAbstractSet   0% 8 8 0   100% 0 0   0%
python / lsst / daf / butler / core / named.py NameMappingSetView   5% 20 19 0   0% 8 0   4%
python / lsst / daf / butler / core / named.py NamedValueMutableSet   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / core / named.py NamedValueSet   4% 24 23 0   0% 6 0   3%
python / lsst / daf / butler / core / named.py (no class)   100% 102 0 0   100% 0 0   100%
python / lsst / daf / butler / core / progress.py ProgressBar   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / core / progress.py Progress   0% 42 42 0   0% 26 0   0%
python / lsst / daf / butler / core / progress.py ProgressHandler   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / core / progress.py _NullProgressBar   0% 5 5 0   100% 0 0   0%
python / lsst / daf / butler / core / progress.py (no class)   100% 32 0 0   100% 0 0   100%
python / lsst / daf / butler / core / quantum.py SerializedQuantum   0% 12 12 0   100% 0 0   0%
python / lsst / daf / butler / core / quantum.py Quantum   0% 125 125 0   0% 76 0   0%
python / lsst / daf / butler / core / quantum.py DimensionRecordsAccumulator   0% 9 9 0   0% 2 0   0%
python / lsst / daf / butler / core / quantum.py (no class)   77% 66 15 0   0% 8 0   69%
python / lsst / daf / butler / core / repoRelocation.py (no class)   47% 17 9 0   0% 6 0   35%
python / lsst / daf / butler / core / simpleQuery.py SimpleQuery   0% 35 35 0   0% 20 0   0%
python / lsst / daf / butler / core / simpleQuery.py SimpleQuery.Select   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / simpleQuery.py (no class)   100% 24 0 0   100% 0 0   100%
python / lsst / daf / butler / core / storageClass.py StorageClassConfig   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / storageClass.py StorageClass   22% 185 145 0   19% 106 8   21%
python / lsst / daf / butler / core / storageClass.py StorageClassFactory   80% 75 15 0   73% 44 6   77%
python / lsst / daf / butler / core / storageClass.py (no class)   100% 67 0 0   100% 0 0   100%
python / lsst / daf / butler / core / storageClassDelegate.py DatasetComponent   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / storageClassDelegate.py StorageClassDelegate   0% 91 91 0   0% 54 0   0%
python / lsst / daf / butler / core / storageClassDelegate.py (no class)   100% 26 0 2   100% 0 0   100%
python / lsst / daf / butler / core / storedFileInfo.py StoredDatastoreItemInfo   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / core / storedFileInfo.py StoredFileInfo   0% 30 30 0   0% 10 0   0%
python / lsst / daf / butler / core / storedFileInfo.py (no class)   100% 42 0 2   100% 0 0   100%
python / lsst / daf / butler / core / time_utils.py TimeConverter   0% 32 32 0   0% 8 0   0%
python / lsst / daf / butler / core / time_utils.py _AstropyTimeToYAML   0% 6 6 0   0% 4 0   0%
python / lsst / daf / butler / core / time_utils.py (no class)   94% 36 2 0   100% 0 0   94%
python / lsst / daf / butler / core / timespan.py _SpecialTimespanBound   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / core / timespan.py Timespan   0% 119 119 0   0% 72 0   0%
python / lsst / daf / butler / core / timespan.py TimespanDatabaseRepresentation   0% 8 8 0   100% 0 0   0%
python / lsst / daf / butler / core / timespan.py _CompoundTimespanDatabaseRepresentation   0% 54 54 0   0% 28 0   0%
python / lsst / daf / butler / core / timespan.py (no class)   98% 112 2 3   100% 0 0   98%
python / lsst / daf / butler / core / utils.py (no class)   47% 34 18 2   0% 10 0   36%
python / lsst / daf / butler / formatters / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / formatters / file.py FileFormatter   0% 36 36 0   0% 14 0   0%
python / lsst / daf / butler / formatters / file.py (no class)   100% 19 0 2   100% 0 0   100%
python / lsst / daf / butler / formatters / yaml.py YamlFormatter   0% 33 33 0   0% 16 0   0%
python / lsst / daf / butler / formatters / yaml.py (no class)   100% 18 0 2   100% 0 0   100%
python / lsst / daf / butler / registries / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registries / sql.py SqlRegistry   0% 393 393 0   0% 196 0   0%
python / lsst / daf / butler / registries / sql.py (no class)   100% 89 0 3   100% 0 0   100%
python / lsst / daf / butler / registry / __init__.py (no class)   100% 9 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _collectionType.py CollectionType   11% 9 8 0   0% 2 0   9%
python / lsst / daf / butler / registry / _collectionType.py (no class)   100% 19 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _config.py RegistryConfig   0% 14 14 0   0% 4 0   0%
python / lsst / daf / butler / registry / _config.py (no class)   100% 18 0 3   100% 0 0   100%
python / lsst / daf / butler / registry / _dbAuth.py DbAuthError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _dbAuth.py DbAuthNotFoundError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _dbAuth.py DbAuthPermissionsError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _dbAuth.py DbAuth   0% 66 66 0   0% 50 0   0%
python / lsst / daf / butler / registry / _dbAuth.py (no class)   100% 16 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _defaults.py RegistryDefaults   0% 26 26 0   0% 16 0   0%
python / lsst / daf / butler / registry / _defaults.py (no class)   100% 18 0 2   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py RegistryError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py ArgumentError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py DatasetTypeError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py DatasetTypeExpressionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py DataIdError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py DimensionNameError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py DataIdValueError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py InconsistentDataIdError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py CollectionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py CollectionTypeError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py CollectionExpressionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py MissingCollectionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py NoDefaultCollectionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py UserExpressionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py UserExpressionSyntaxError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py ConflictingDefinitionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py OrphanedRecordError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py UnsupportedIdGeneratorError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _exceptions.py (no class)   100% 19 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / _registry.py Registry   0% 63 63 0   0% 10 0   0%
python / lsst / daf / butler / registry / _registry.py (no class)   100% 117 0 3   100% 0 0   100%
python / lsst / daf / butler / registry / bridge / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / bridge / ephemeral.py EphemeralDatastoreRegistryBridge   0% 19 19 0   0% 6 0   0%
python / lsst / daf / butler / registry / bridge / ephemeral.py (no class)   100% 15 0 2   100% 0 0   100%
python / lsst / daf / butler / registry / bridge / monolithic.py MonolithicDatastoreRegistryBridge   0% 41 41 0   0% 10 0   0%
python / lsst / daf / butler / registry / bridge / monolithic.py MonolithicDatastoreRegistryBridgeManager   0% 20 20 0   0% 8 0   0%
python / lsst / daf / butler / registry / bridge / monolithic.py (no class)   85% 39 6 3   100% 0 0   85%
python / lsst / daf / butler / registry / connectionString.py ConnectionStringFactory   0% 20 20 0   0% 10 0   0%
python / lsst / daf / butler / registry / connectionString.py (no class)   100% 13 0 2   100% 0 0   100%
python / lsst / daf / butler / registry / databases / __init__.py (no class)   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / databases / postgresql.py PostgresqlDatabase   0% 67 67 0   0% 22 0   0%
python / lsst / daf / butler / registry / databases / postgresql.py _RangeTimespanType   0% 20 20 0   0% 10 0   0%
python / lsst / daf / butler / registry / databases / postgresql.py _RangeTimespanType.comparator_factory   0% 8 8 0   0% 2 0   0%
python / lsst / daf / butler / registry / databases / postgresql.py _RangeTimespanRepresentation   0% 39 39 0   0% 20 0   0%
python / lsst / daf / butler / registry / databases / postgresql.py (no class)   100% 71 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / databases / sqlite.py SqliteDatabase   0% 105 105 0   0% 54 0   0%
python / lsst / daf / butler / registry / databases / sqlite.py (no class)   87% 38 5 0   100% 0 0   87%
python / lsst / daf / butler / registry / interfaces / __init__.py (no class)   100% 8 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _attributes.py ButlerAttributeExistsError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _attributes.py ButlerAttributeManager   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _attributes.py (no class)   100% 20 0 2   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _bridge.py FakeDatasetRef   0% 10 10 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _bridge.py DatastoreRegistryBridge   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _bridge.py DatastoreRegistryBridgeManager   0% 7 7 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _bridge.py (no class)   100% 51 0 5   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _collections.py CollectionRecord   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _collections.py RunRecord   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _collections.py ChainedCollectionRecord   0% 21 21 0   0% 14 0   0%
python / lsst / daf / butler / registry / interfaces / _collections.py CollectionManager   0% 18 18 0   0% 2 0   0%
python / lsst / daf / butler / registry / interfaces / _collections.py (no class)   100% 70 0 3   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _database.py ReadOnlyDatabaseError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _database.py DatabaseConflictError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _database.py SchemaAlreadyDefinedError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _database.py StaticTablesContext   0% 16 16 0   0% 4 0   0%
python / lsst / daf / butler / registry / interfaces / _database.py Database   0% 300 300 0   0% 140 0   0%
python / lsst / daf / butler / registry / interfaces / _database.py (no class)   97% 91 3 0   0% 2 0   95%
python / lsst / daf / butler / registry / interfaces / _datasets.py DatasetIdGenEnum   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _datasets.py DatasetRecordStorage   0% 10 10 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _datasets.py DatasetRecordStorageManager   0% 15 15 0   0% 2 0   0%
python / lsst / daf / butler / registry / interfaces / _datasets.py (no class)   100% 65 0 5   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _dimensions.py DimensionRecordStorage   0% 7 7 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _dimensions.py GovernorDimensionRecordStorage   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _dimensions.py SkyPixDimensionRecordStorage   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _dimensions.py DatabaseDimensionRecordStorage   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _dimensions.py DatabaseDimensionOverlapStorage   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _dimensions.py DimensionRecordStorageManager   0% 12 12 0   0% 2 0   0%
python / lsst / daf / butler / registry / interfaces / _dimensions.py (no class)   100% 82 0 4   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _opaque.py OpaqueTableStorage   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / registry / interfaces / _opaque.py OpaqueTableStorageManager   0% 7 7 0   0% 2 0   0%
python / lsst / daf / butler / registry / interfaces / _opaque.py (no class)   100% 27 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / interfaces / _versioning.py VersionTuple   0% 8 8 0   0% 2 0   0%
python / lsst / daf / butler / registry / interfaces / _versioning.py VersionedExtension   0% 26 26 0   0% 10 0   0%
python / lsst / daf / butler / registry / interfaces / _versioning.py (no class)   100% 22 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / managers.py _GenericRegistryManagers   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / managers.py RegistryManagerTypes   0% 31 31 0   0% 6 0   0%
python / lsst / daf / butler / registry / managers.py RegistryManagerInstances   0% 13 13 0   100% 0 0   0%
python / lsst / daf / butler / registry / managers.py (no class)   100% 44 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / nameShrinker.py NameShrinker   0% 13 13 0   0% 2 0   0%
python / lsst / daf / butler / registry / nameShrinker.py (no class)   100% 8 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / opaque.py ByNameOpaqueTableStorage   0% 28 28 0   0% 12 0   0%
python / lsst / daf / butler / registry / opaque.py ByNameOpaqueTableStorageManager   0% 15 15 0   0% 2 0   0%
python / lsst / daf / butler / registry / opaque.py (no class)   100% 25 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / __init__.py (no class)   100% 4 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / _builder.py QueryBuilder   0% 158 158 0   0% 88 0   0%
python / lsst / daf / butler / registry / queries / _builder.py (no class)   100% 29 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / _query.py OrderByColumn   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / _query.py Query   0% 117 117 0   0% 66 0   0%
python / lsst / daf / butler / registry / queries / _query.py DirectQueryUniqueness   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / _query.py DirectQuery   0% 84 84 0   0% 38 0   0%
python / lsst / daf / butler / registry / queries / _query.py MaterializedQuery   0% 33 33 0   0% 12 0   0%
python / lsst / daf / butler / registry / queries / _query.py EmptyQuery   0% 18 18 0   0% 6 0   0%
python / lsst / daf / butler / registry / queries / _query.py (no class)   100% 110 0 2   100% 0 0   100%
python / lsst / daf / butler / registry / queries / _results.py DataCoordinateQueryResults   0% 74 74 2   0% 26 0   0%
python / lsst / daf / butler / registry / queries / _results.py DatasetQueryResults   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / _results.py ParentDatasetQueryResults   0% 30 30 0   0% 10 0   0%
python / lsst / daf / butler / registry / queries / _results.py ChainedDatasetQueryResults   0% 13 13 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / _results.py DimensionRecordQueryResults   0% 5 5 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / _results.py _DimensionRecordKey   0% 19 19 0   0% 8 0   0%
python / lsst / daf / butler / registry / queries / _results.py DatabaseDimensionRecordQueryResults   0% 27 27 0   0% 6 0   0%
python / lsst / daf / butler / registry / queries / _results.py (no class)   100% 108 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / _structs.py QueryWhereExpression   0% 46 46 0   0% 24 0   0%
python / lsst / daf / butler / registry / queries / _structs.py QueryWhereClause   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / _structs.py OrderByClauseColumn   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / _structs.py OrderByClause   0% 11 11 0   0% 6 0   0%
python / lsst / daf / butler / registry / queries / _structs.py ElementOrderByClause   0% 10 10 0   0% 6 0   0%
python / lsst / daf / butler / registry / queries / _structs.py QuerySummary   0% 44 44 0   0% 32 0   0%
python / lsst / daf / butler / registry / queries / _structs.py DatasetQueryColumns   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / _structs.py QueryColumns   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / _structs.py RegistryManagers   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / _structs.py (no class)   100% 113 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / __init__.py (no class)   100% 4 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / categorize.py ExpressionConstant   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / categorize.py (no class)   14% 88 76 0   0% 52 0   9%
python / lsst / daf / butler / registry / queries / expressions / check.py InspectionSummary   0% 4 4 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / expressions / check.py TreeSummary   0% 10 10 0   0% 4 0   0%
python / lsst / daf / butler / registry / queries / expressions / check.py InspectionVisitor   0% 30 30 0   0% 12 0   0%
python / lsst / daf / butler / registry / queries / expressions / check.py InnerSummary   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / check.py OuterSummary   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / check.py CheckVisitor   0% 45 45 0   0% 26 0   0%
python / lsst / daf / butler / registry / queries / expressions / check.py (no class)   100% 58 0 2   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / convert.py ExpressionTypeError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / convert.py _TimestampLiteral   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / convert.py _TimestampColumnElement   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / convert.py WhereClauseConverter   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / convert.py ScalarWhereClauseConverter   0% 16 16 0   0% 6 0   0%
python / lsst / daf / butler / registry / queries / expressions / convert.py TimespanWhereClauseConverter   0% 12 12 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / expressions / convert.py RangeWhereClauseConverter   0% 7 7 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / expressions / convert.py TimeBinaryOperator   0% 20 20 0   0% 6 0   0%
python / lsst / daf / butler / registry / queries / expressions / convert.py DispatchTable   0% 57 57 0   0% 16 0   0%
python / lsst / daf / butler / registry / queries / expressions / convert.py WhereClauseConverterVisitor   0% 76 76 0   0% 32 0   0%
python / lsst / daf / butler / registry / queries / expressions / convert.py (no class)   84% 126 20 2   100% 0 0   84%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py LogicalBinaryOperator   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py NormalForm   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py NormalFormVisitor   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py NormalFormExpression   0% 16 16 0   0% 4 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py PrecedenceTier   0% 7 7 0   0% 6 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py TransformationWrapper   0% 15 15 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py Opaque   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py LogicalNot   0% 8 8 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py LogicalBinaryOperation   0% 44 44 0   0% 18 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py TransformationVisitor   0% 16 16 0   0% 4 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py TreeReconstructionVisitor   0% 15 15 0   0% 6 0   0%
python / lsst / daf / butler / registry / queries / expressions / normalForm.py (no class)   100% 126 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / parser / __init__.py (no class)   100% 4 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py Node   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py BinaryOp   0% 8 8 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py UnaryOp   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py StringLiteral   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py TimeLiteral   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py NumericLiteral   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py Identifier   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py RangeLiteral   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py IsIn   0% 12 12 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py Parens   0% 5 5 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py TupleNode   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py FunctionCall   0% 7 7 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py PointNode   0% 7 7 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / exprTree.py (no class)   92% 62 5 3   0% 4 0   86%
python / lsst / daf / butler / registry / queries / expressions / parser / parserLex.py ParserLexError   0% 5 5 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / parserLex.py ParserLex   0% 27 27 0   0% 4 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / parserLex.py (no class)   100% 36 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / parser / parserYacc.py ParserYaccError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / parser / parserYacc.py ParseError   0% 13 13 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / parserYacc.py ParserEOFError   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / parserYacc.py ParserYacc   0% 58 58 0   0% 24 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / parserYacc.py (no class)   51% 88 43 0   0% 32 0   38%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / __init__.py (no class)   100% 2 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / lex.py LexError   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / lex.py LexToken   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / lex.py PlyLogger   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / lex.py NullLogger   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / lex.py Lexer   0% 198 198 0   0% 70 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / lex.py LexerReflect   0% 218 218 0   0% 114 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / lex.py (no class)   26% 266 196 0   1% 118 1   18%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py PlyLogger   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py NullLogger   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py YaccError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py YaccSymbol   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py YaccProduction   0% 23 23 0   0% 4 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py LRParser   0% 540 540 0   0% 196 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py Production   0% 37 37 0   0% 10 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py MiniProduction   0% 11 11 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py LRItem   0% 14 14 0   0% 2 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py GrammarError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py Grammar   0% 228 228 0   0% 154 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py VersionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py LRTable   0% 39 39 0   0% 14 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py LALRError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py LRGeneratedTable   0% 402 402 0   0% 236 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py ParserReflect   0% 178 178 0   0% 94 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / ply / yacc.py (no class)   34% 448 295 1   1% 158 1   25%
python / lsst / daf / butler / registry / queries / expressions / parser / treeVisitor.py TreeVisitor   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / registry / queries / expressions / parser / treeVisitor.py (no class)   100% 29 0 3   100% 0 0   100%
python / lsst / daf / butler / registry / summaries.py GovernorDimensionRestriction   0% 38 38 0   0% 18 0   0%
python / lsst / daf / butler / registry / summaries.py CollectionSummary   0% 22 22 0   0% 16 0   0%
python / lsst / daf / butler / registry / summaries.py (no class)   100% 42 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / tests / __init__.py (no class)   100% 2 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / tests / _database.py DatabaseTests   0% 426 426 0   0% 44 0   0%
python / lsst / daf / butler / registry / tests / _database.py (no class)   87% 55 7 0   100% 0 0   87%
python / lsst / daf / butler / registry / tests / _registry.py RegistryTests   0% 1218 1218 0   0% 134 0   0%
python / lsst / daf / butler / registry / tests / _registry.py RegistryTests.testCalibrationCollections.Ambiguous   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / tests / _registry.py (no class)   97% 78 2 2   100% 0 0   97%
python / lsst / daf / butler / registry / versions.py MissingVersionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / versions.py IncompatibleVersionError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / versions.py MissingManagerError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / versions.py ManagerMismatchError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / versions.py DigestMismatchError   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / versions.py VersionInfo   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / registry / versions.py ButlerVersionsManager   0% 79 79 0   0% 50 0   0%
python / lsst / daf / butler / registry / versions.py (no class)   100% 37 0 2   100% 0 0   100%
python / lsst / daf / butler / registry / wildcards.py EllipsisType   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / registry / wildcards.py CategorizedWildcard   0% 92 92 0   0% 60 0   0%
python / lsst / daf / butler / registry / wildcards.py CollectionSearch   0% 25 25 0   0% 14 0   0%
python / lsst / daf / butler / registry / wildcards.py CollectionQuery   0% 32 32 0   0% 22 0   0%
python / lsst / daf / butler / registry / wildcards.py (no class)   82% 57 10 6   0% 8 0   72%
python / lsst / daf / butler / script / __init__.py (no class)   100% 22 0 0   100% 0 0   100%
python / lsst / daf / butler / script / _associate.py (no class)   50% 8 4 0   100% 0 0   50%
python / lsst / daf / butler / script / _pruneDatasets.py PruneDatasetsResult   0% 12 12 0   100% 0 0   0%
python / lsst / daf / butler / script / _pruneDatasets.py PruneDatasetsResult.State   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / script / _pruneDatasets.py (no class)   46% 65 35 0   0% 20 0   35%
python / lsst / daf / butler / script / butlerImport.py (no class)   33% 6 4 0   0% 2 0   25%
python / lsst / daf / butler / script / certifyCalibrations.py (no class)   31% 16 11 0   0% 6 0   23%
python / lsst / daf / butler / script / collectionChain.py (no class)   9% 43 39 0   0% 24 0   6%
python / lsst / daf / butler / script / configDump.py (no class)   18% 11 9 0   0% 4 0   13%
python / lsst / daf / butler / script / configValidate.py (no class)   25% 12 9 0   100% 0 0   25%
python / lsst / daf / butler / script / createRepo.py (no class)   60% 5 2 0   100% 0 0   60%
python / lsst / daf / butler / script / exportCalibs.py (no class)   15% 55 47 0   0% 20 0   11%
python / lsst / daf / butler / script / ingest_files.py (no class)   29% 52 37 2   0% 8 0   25%
python / lsst / daf / butler / script / pruneCollection.py PruneCollectionResult   0% 3 3 0   100% 0 0   0%
python / lsst / daf / butler / script / pruneCollection.py pruneCollection.CollectionInfo   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / script / pruneCollection.py (no class)   19% 47 38 0   0% 12 0   15%
python / lsst / daf / butler / script / queryCollections.py (no class)   13% 68 59 0   0% 36 0   9%
python / lsst / daf / butler / script / queryDataIds.py _Table   0% 13 13 0   0% 4 0   0%
python / lsst / daf / butler / script / queryDataIds.py (no class)   40% 20 12 0   0% 8 0   29%
python / lsst / daf / butler / script / queryDatasetTypes.py (no class)   38% 16 10 0   0% 4 0   30%
python / lsst / daf / butler / script / queryDatasets.py _Table   0% 27 27 0   0% 12 0   0%
python / lsst / daf / butler / script / queryDatasets.py QueryDatasets   0% 23 23 0   0% 16 0   0%
python / lsst / daf / butler / script / queryDatasets.py (no class)   100% 18 0 0   100% 0 0   100%
python / lsst / daf / butler / script / queryDimensionRecords.py (no class)   16% 25 21 0   0% 14 0   10%
python / lsst / daf / butler / script / register_dataset_type.py (no class)   46% 13 7 0   0% 2 0   40%
python / lsst / daf / butler / script / removeCollections.py RemoveCollectionResult   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / script / removeCollections.py CollectionInfo   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / script / removeCollections.py (no class)   46% 37 20 0   0% 6 0   40%
python / lsst / daf / butler / script / removeDatasetType.py (no class)   60% 5 2 0   100% 0 0   60%
python / lsst / daf / butler / script / removeRuns.py RemoveRun   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / script / removeRuns.py RemoveRunsResult   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / script / removeRuns.py (no class)   38% 47 29 0   0% 10 0   32%
python / lsst / daf / butler / script / retrieveArtifacts.py (no class)   36% 14 9 0   0% 4 0   28%
python / lsst / daf / butler / script / transferDatasets.py (no class)   41% 17 10 0   0% 2 0   37%
python / lsst / daf / butler / tests / __init__.py (no class)   100% 6 0 0   100% 0 0   100%
python / lsst / daf / butler / tests / _datasetsHelper.py DatasetTestHelper   0% 10 10 0   0% 4 0   0%
python / lsst / daf / butler / tests / _datasetsHelper.py DatastoreTestHelper   0% 13 13 0   0% 6 0   0%
python / lsst / daf / butler / tests / _datasetsHelper.py BadWriteFormatter   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / tests / _datasetsHelper.py BadNoWriteFormatter   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / tests / _datasetsHelper.py MultiDetectorFormatter   0% 10 10 0   0% 6 0   0%
python / lsst / daf / butler / tests / _datasetsHelper.py (no class)   100% 18 0 0   100% 0 0   100%
python / lsst / daf / butler / tests / _dummyRegistry.py DummyOpaqueTableStorage   0% 35 35 0   0% 28 0   0%
python / lsst / daf / butler / tests / _dummyRegistry.py DummyOpaqueTableStorageManager   0% 6 6 0   100% 0 0   0%
python / lsst / daf / butler / tests / _dummyRegistry.py DummyDatastoreRegistryBridgeManager   0% 10 10 0   0% 4 0   0%
python / lsst / daf / butler / tests / _dummyRegistry.py DummyRegistry   0% 4 4 0   100% 0 0   0%
python / lsst / daf / butler / tests / _dummyRegistry.py (no class)   100% 33 0 0   100% 0 0   100%
python / lsst / daf / butler / tests / _examplePythonTypes.py MetricsExample   0% 16 16 0   0% 4 0   0%
python / lsst / daf / butler / tests / _examplePythonTypes.py MetricsExampleModel   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / tests / _examplePythonTypes.py ListDelegate   0% 5 5 0   0% 2 0   0%
python / lsst / daf / butler / tests / _examplePythonTypes.py MetricsDelegate   0% 13 13 0   0% 6 0   0%
python / lsst / daf / butler / tests / _examplePythonTypes.py (no class)   55% 55 25 0   0% 4 0   51%
python / lsst / daf / butler / tests / _testRepo.py DatastoreMock   0% 6 6 0   0% 2 0   0%
python / lsst / daf / butler / tests / _testRepo.py (no class)   18% 135 111 0   0% 62 0   12%
python / lsst / daf / butler / tests / cliCmdTestBase.py CliCmdTestBase   0% 29 29 0   0% 6 0   0%
python / lsst / daf / butler / tests / cliCmdTestBase.py (no class)   100% 27 0 0   100% 0 0   100%
python / lsst / daf / butler / tests / cliLogTestBase.py CliLogTestBase   0% 73 73 0   0% 20 0   0%
python / lsst / daf / butler / tests / cliLogTestBase.py CliLogTestBase.PythonLogger   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / tests / cliLogTestBase.py CliLogTestBase.LsstLogger   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / tests / cliLogTestBase.py (no class)   78% 58 13 0   12% 8 1   70%
python / lsst / daf / butler / tests / testFormatters.py DoNothingFormatter   0% 2 2 0   100% 0 0   0%
python / lsst / daf / butler / tests / testFormatters.py FormatterTest   0% 8 8 0   0% 6 0   0%
python / lsst / daf / butler / tests / testFormatters.py SingleExtensionFormatter   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / tests / testFormatters.py MultipleExtensionsFormatter   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / tests / testFormatters.py LenientYamlFormatter   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / tests / testFormatters.py MetricsExampleFormatter   0% 29 29 0   0% 16 0   0%
python / lsst / daf / butler / tests / testFormatters.py MetricsExampleDataFormatter   0% 17 17 0   0% 6 0   0%
python / lsst / daf / butler / tests / testFormatters.py (no class)   100% 37 0 2   100% 0 0   100%
python / lsst / daf / butler / tests / utils.py ButlerTestHelper   0% 18 18 0   0% 10 0   0%
python / lsst / daf / butler / tests / utils.py MetricTestRepo   0% 29 29 0   0% 4 0   0%
python / lsst / daf / butler / tests / utils.py (no class)   76% 37 9 0   0% 2 0   72%
python / lsst / daf / butler / transfers / __init__.py (no class)   100% 3 0 0   100% 0 0   100%
python / lsst / daf / butler / transfers / _context.py RepoExportContext   0% 93 93 0   0% 66 0   0%
python / lsst / daf / butler / transfers / _context.py (no class)   100% 17 0 0   100% 0 0   100%
python / lsst / daf / butler / transfers / _interfaces.py RepoTransferFormatConfig   100% 0 0 0   100% 0 0   100%
python / lsst / daf / butler / transfers / _interfaces.py RepoExportBackend   0% 5 5 0   100% 0 0   0%
python / lsst / daf / butler / transfers / _interfaces.py RepoImportBackend   0% 1 1 0   100% 0 0   0%
python / lsst / daf / butler / transfers / _interfaces.py (no class)   100% 26 0 0   100% 0 0   100%
python / lsst / daf / butler / transfers / _yaml.py YamlRepoExportBackend   0% 27 27 0   0% 12 0   0%
python / lsst / daf / butler / transfers / _yaml.py YamlRepoImportBackend   0% 119 119 0   0% 84 0   0%
python / lsst / daf / butler / transfers / _yaml.py (no class)   90% 39 4 0   0% 2 0   85%
python / lsst / daf / butler / version.py (no class)   100% 6 0 0   100% 0 0   100%
tests / test_astropyTableFormatter.py AstropyTableFormatterTestCase   0% 16 16 0   100% 0 0   0%
tests / test_astropyTableFormatter.py (no class)   92% 13 1 0   50% 2 1   87%
tests / test_butler.py TransactionTestError   100% 0 0 0   100% 0 0   100%
tests / test_butler.py ButlerConfigTests   0% 11 11 0   100% 0 0   0%
tests / test_butler.py ButlerPutGetTests   0% 178 178 0   0% 24 0   0%
tests / test_butler.py ButlerTests   0% 347 347 0   0% 44 0   0%
tests / test_butler.py FileDatastoreButlerTests   0% 85 85 0   0% 2 0   0%
tests / test_butler.py PosixDatastoreButlerTestCase   0% 110 110 0   0% 8 0   0%
tests / test_butler.py PostgresPosixDatastoreButlerTestCase   0% 22 22 0   0% 2 0   0%
tests / test_butler.py InMemoryDatastoreButlerTestCase   0% 1 1 0   100% 0 0   0%
tests / test_butler.py ChainedDatastoreButlerTestCase   100% 0 0 0   100% 0 0   100%
tests / test_butler.py ButlerExplicitRootTestCase   0% 16 16 0   100% 0 0   0%
tests / test_butler.py ButlerMakeRepoOutfileTestCase   0% 14 14 0   0% 2 0   0%
tests / test_butler.py ButlerMakeRepoOutfileDirTestCase   0% 6 6 0   100% 0 0   0%
tests / test_butler.py ButlerMakeRepoOutfileUriTestCase   0% 4 4 0   100% 0 0   0%
tests / test_butler.py S3DatastoreButlerTestCase   0% 37 37 0   0% 10 0   0%
tests / test_butler.py WebdavDatastoreButlerTestCase   0% 54 54 0   0% 10 0   0%
tests / test_butler.py PosixDatastoreTransfers   0% 110 110 0   0% 34 0   0%
tests / test_butler.py (no class)   97% 215 7 0   50% 2 1   96%
tests / test_cliCmdAssociate.py AssociateTestCase   0% 7 7 0   100% 0 0   0%
tests / test_cliCmdAssociate.py (no class)   92% 12 1 0   50% 2 1   86%
tests / test_cliCmdConfigDump.py ConfigDumpTest   0% 2 2 0   100% 0 0   0%
tests / test_cliCmdConfigDump.py ConfigDumpUseTest   0% 85 85 0   100% 0 0   0%
tests / test_cliCmdConfigDump.py (no class)   96% 27 1 0   50% 2 1   93%
tests / test_cliCmdConfigValidate.py ValidateTest   0% 2 2 0   100% 0 0   0%
tests / test_cliCmdConfigValidate.py ConfigValidateUseTest   0% 13 13 0   100% 0 0   0%
tests / test_cliCmdConfigValidate.py (no class)   94% 17 1 0   50% 2 1   89%
tests / test_cliCmdCreate.py CreateTest   0% 5 5 0   100% 0 0   0%
tests / test_cliCmdCreate.py (no class)   93% 14 1 0   50% 2 1   88%
tests / test_cliCmdImport.py ImportTestCase   0% 5 5 0   100% 0 0   0%
tests / test_cliCmdImport.py ExportFileCase   0% 10 10 0   100% 0 0   0%
tests / test_cliCmdImport.py (no class)   96% 28 1 0   50% 2 1   93%
tests / test_cliCmdIngestFiles.py CliIngestFilesTest   0% 38 38 0   0% 4 0   0%
tests / test_cliCmdIngestFiles.py (no class)   95% 19 1 0   50% 2 1   90%
tests / test_cliCmdPruneCollection.py PruneCollectionsTest   0% 27 27 0   100% 0 0   0%
tests / test_cliCmdPruneCollection.py PruneCollectionExecutionTest   0% 44 44 0   100% 0 0   0%
tests / test_cliCmdPruneCollection.py (no class)   95% 20 1 0   50% 2 1   91%
tests / test_cliCmdPruneDatasets.py PruneDatasetsTestCase   0% 54 54 0   0% 12 0   0%
tests / test_cliCmdPruneDatasets.py (no class)   89% 53 6 0   25% 4 1   84%
tests / test_cliCmdQueryCollections.py QueryCollectionsCmdTest   0% 4 4 0   100% 0 0   0%
tests / test_cliCmdQueryCollections.py QueryCollectionsScriptTest   0% 19 19 0   100% 0 0   0%
tests / test_cliCmdQueryCollections.py ChainedCollectionsTest   0% 46 46 0   100% 0 0   0%
tests / test_cliCmdQueryCollections.py (no class)   97% 30 1 0   50% 2 1   94%
tests / test_cliCmdQueryDataIds.py QueryDataIdsTest   0% 21 21 0   100% 0 0   0%
tests / test_cliCmdQueryDataIds.py (no class)   95% 19 1 0   50% 2 1   90%
tests / test_cliCmdQueryDatasetTypes.py QueryDatasetTypesCmdTest   0% 6 6 0   100% 0 0   0%
tests / test_cliCmdQueryDatasetTypes.py QueryDatasetTypesScriptTest   0% 35 35 0   100% 0 0   0%
tests / test_cliCmdQueryDatasetTypes.py (no class)   95% 21 1 0   50% 2 1   91%
tests / test_cliCmdQueryDatasets.py QueryDatasetsTest   0% 34 34 0   100% 0 0   0%
tests / test_cliCmdQueryDatasets.py (no class)   92% 26 2 0   50% 2 1   89%
tests / test_cliCmdQueryDimensionRecords.py QueryDimensionRecordsTest   0% 37 37 0   100% 0 0   0%
tests / test_cliCmdQueryDimensionRecords.py (no class)   96% 25 1 0   50% 2 1   93%
tests / test_cliCmdRemoveCollections.py RemoveCollectionTest   0% 60 60 0   0% 8 0   0%
tests / test_cliCmdRemoveCollections.py (no class)   95% 22 1 0   50% 2 1   92%
tests / test_cliCmdRemoveRuns.py RemoveCollectionTest   0% 67 67 0   100% 0 0   0%
tests / test_cliCmdRemoveRuns.py (no class)   92% 13 1 0   50% 2 1   87%
tests / test_cliCmdRetrieveArtifacts.py CliRetrieveArtifactsTest   0% 39 39 0   0% 4 0   0%
tests / test_cliCmdRetrieveArtifacts.py (no class)   95% 22 1 0   50% 2 1   92%
tests / test_cliLog.py CliLogTestCase   100% 0 0 0   100% 0 0   100%
tests / test_cliLog.py ConvertPyLogLevelTestCase   0% 5 5 0   100% 0 0   0%
tests / test_cliLog.py (no class)   79% 14 3 0   50% 2 1   75%
tests / test_cliPluginLoader.py FailedLoadTest   0% 17 17 0   100% 0 0   0%
tests / test_cliPluginLoader.py FailedLoadTest.test_unimportableLocalPackage.FailCLI   100% 0 0 0   100% 0 0   100%
tests / test_cliPluginLoader.py PluginLoaderTest   0% 26 26 0   100% 0 0   0%
tests / test_cliPluginLoader.py (no class)   79% 33 7 0   50% 2 1   77%
tests / test_cliUtilSplitCommas.py SplitCommasTestCase   0% 20 20 0   100% 0 0   0%
tests / test_cliUtilSplitCommas.py (no class)   89% 19 2 0   50% 2 1   86%
tests / test_cliUtilSplitKv.py SplitKvTestCase   0% 18 18 0   100% 0 0   0%
tests / test_cliUtilSplitKv.py SplitKvCmdTestCase   0% 86 86 0   0% 2 0   0%
tests / test_cliUtilSplitKv.py (no class)   86% 37 5 0   50% 2 1   85%
tests / test_cliUtilToUpper.py ToUpperTestCase   0% 13 13 0   100% 0 0   0%
tests / test_cliUtilToUpper.py (no class)   87% 15 2 0   50% 2 1   82%
tests / test_cliUtils.py ArgumentHelpGeneratorTestCase   0% 10 10 0   100% 0 0   0%
tests / test_cliUtils.py UnwrapStringTestCase   0% 14 14 0   100% 0 0   0%
tests / test_cliUtils.py MWOptionTest   0% 18 18 0   0% 2 0   0%
tests / test_cliUtils.py MWArgumentDecoratorTest   0% 22 22 0   0% 4 0   0%
tests / test_cliUtils.py MWOptionDecoratorTest   0% 20 20 0   100% 0 0   0%
tests / test_cliUtils.py SectionOptionTest   0% 7 7 0   100% 0 0   0%
tests / test_cliUtils.py MWPathTest   0% 24 24 0   100% 0 0   0%
tests / test_cliUtils.py MWCommandTest   0% 22 22 0   0% 2 0   0%
tests / test_cliUtils.py (no class)   85% 61 9 0   50% 2 1   84%
tests / test_composites.py TestCompositesConfig   0% 36 36 0   0% 2 0   0%
tests / test_composites.py (no class)   92% 12 1 0   50% 2 1   86%
tests / test_config.py ExampleWithConfigFileReference   100% 0 0 0   100% 0 0   100%
tests / test_config.py ExampleWithConfigFileReference2   100% 0 0 0   100% 0 0   100%
tests / test_config.py ConfigTest   100% 0 0 0   100% 0 0   100%
tests / test_config.py ConfigTestPathlib   100% 0 0 0   100% 0 0   100%
tests / test_config.py ConfigTestEmpty   100% 0 0 0   100% 0 0   100%
tests / test_config.py ConfigTestButlerDir   100% 0 0 0   100% 0 0   100%
tests / test_config.py ConfigTestNoDefaults   100% 0 0 0   100% 0 0   100%
tests / test_config.py ConfigTestAbsPath   100% 0 0 0   100% 0 0   100%
tests / test_config.py ConfigTestCls   100% 0 0 0   100% 0 0   100%
tests / test_config.py ConfigTestCase   0% 204 204 0   0% 34 0   0%
tests / test_config.py ConfigSubsetTestCase   0% 129 129 0   0% 2 0   0%
tests / test_config.py FileWriteConfigTestCase   0% 11 11 0   0% 2 0   0%
tests / test_config.py (no class)   90% 73 7 0   50% 2 1   89%
tests / test_connectionString.py ConnectionStringBuilderTestCase   0% 20 20 0   0% 2 0   0%
tests / test_connectionString.py (no class)   95% 19 1 0   50% 2 1   90%
tests / test_constraints.py ConstraintsTestCase   0% 81 81 0   100% 0 0   0%
tests / test_constraints.py (no class)   92% 13 1 0   50% 2 1   87%
tests / test_datasets.py DatasetTypeTestCase   0% 181 181 0   0% 14 0   0%
tests / test_datasets.py DatasetRefTestCase   0% 57 57 0   100% 0 0   0%
tests / test_datasets.py (no class)   96% 27 1 0   50% 2 1   93%
tests / test_datastore.py DataIdForTest   0% 25 25 0   0% 14 0   0%
tests / test_datastore.py Named   100% 0 0 0   100% 0 0   100%
tests / test_datastore.py FakeDataCoordinate   0% 5 5 0   0% 2 0   0%
tests / test_datastore.py TransactionTestError   100% 0 0 0   100% 0 0   100%
tests / test_datastore.py DatastoreTestsBase   0% 9 9 0   0% 2 0   0%
tests / test_datastore.py DatastoreTests   0% 406 406 0   0% 78 0   0%
tests / test_datastore.py PosixDatastoreTestCase   0% 29 29 0   100% 0 0   0%
tests / test_datastore.py PosixDatastoreNoChecksumsTestCase   0% 14 14 0   100% 0 0   0%
tests / test_datastore.py TrashDatastoreTestCase   0% 24 24 0   100% 0 0   0%
tests / test_datastore.py CleanupPosixDatastoreTestCase   0% 24 24 0   0% 2 0   0%
tests / test_datastore.py InMemoryDatastoreTestCase   100% 0 0 0   100% 0 0   100%
tests / test_datastore.py ChainedDatastoreTestCase   100% 0 0 0   100% 0 0   100%
tests / test_datastore.py ChainedDatastoreMemoryTestCase   100% 0 0 0   100% 0 0   100%
tests / test_datastore.py DatastoreConstraintsTests   0% 27 27 0   0% 8 0   0%
tests / test_datastore.py PosixDatastoreConstraintsTestCase   0% 2 2 0   100% 0 0   0%
tests / test_datastore.py InMemoryDatastoreConstraintsTestCase   100% 0 0 0   100% 0 0   100%
tests / test_datastore.py ChainedDatastoreConstraintsNativeTestCase   100% 0 0 0   100% 0 0   100%
tests / test_datastore.py ChainedDatastoreConstraintsTestCase   100% 0 0 0   100% 0 0   100%
tests / test_datastore.py ChainedDatastoreMemoryConstraintsTestCase   100% 0 0 0   100% 0 0   100%
tests / test_datastore.py ChainedDatastorePerStoreConstraintsTests   0% 37 37 0   0% 12 0   0%
tests / test_datastore.py DatastoreCacheTestCase   0% 154 154 0   0% 24 0   0%
tests / test_datastore.py DatasetRefURIsTestCase   0% 19 19 0   100% 0 0   0%
tests / test_datastore.py DataIdForTestTestCase   0% 47 47 0   0% 4 0   0%
tests / test_datastore.py (no class)   97% 153 5 0   25% 4 1   95%
tests / test_dbAuth.py DbAuthTestCase   0% 121 121 0   0% 8 0   0%
tests / test_dbAuth.py (no class)   93% 15 1 0   50% 2 1   88%
tests / test_ddl.py AstropyTimeNsecTaiTestCase   0% 21 21 0   0% 2 0   0%
tests / test_ddl.py (no class)   91% 11 1 0   50% 2 1   85%
tests / test_dimensions.py DimensionTestCase   0% 127 127 0   0% 32 0   0%
tests / test_dimensions.py SplitByStateFlags   0% 9 9 0   0% 8 0   0%
tests / test_dimensions.py DataCoordinateTestCase   0% 183 183 0   0% 78 0   0%
tests / test_dimensions.py (no class)   84% 63 10 0   50% 2 1   83%
tests / test_exprParserLex.py ParserLexTestCase   0% 162 162 0   0% 10 0   0%
tests / test_exprParserLex.py (no class)   95% 19 1 0   50% 2 1   90%
tests / test_exprParserYacc.py _Visitor   0% 14 14 0   0% 4 0   0%
tests / test_exprParserYacc.py ParserLexTestCase   0% 329 329 0   0% 8 0   0%
tests / test_exprParserYacc.py (no class)   97% 38 1 0   50% 2 1   95%
tests / test_expressions.py FakeDatasetRecordStorageManager   100% 0 0 0   100% 0 0   100%
tests / test_expressions.py ConvertExpressionToSqlTestCase   0% 30 30 0   100% 0 0   0%
tests / test_expressions.py CheckVisitorTestCase   0% 20 20 0   100% 0 0   0%
tests / test_expressions.py (no class)   94% 18 1 0   50% 2 1   90%
tests / test_formatter.py FormatterFactoryTestCase   0% 104 104 0   0% 8 0   0%
tests / test_formatter.py (no class)   94% 17 1 0   50% 2 1   89%
tests / test_location.py LocationTestCase   0% 65 65 0   0% 2 0   0%
tests / test_location.py (no class)   93% 14 1 0   50% 2 1   88%
tests / test_logFormatter.py ButlerLogRecordsFormatterTestCase   0% 32 32 0   100% 0 0   0%
tests / test_logFormatter.py (no class)   94% 16 1 0   50% 2 1   89%
tests / test_logging.py LoggingTestCase   0% 137 137 0   0% 20 0   0%
tests / test_logging.py TestJsonLogging   0% 39 39 0   0% 2 0   0%
tests / test_logging.py (no class)   95% 20 1 0   50% 2 1   91%
tests / test_matplotlibFormatter.py MatplotlibFormatterTestCase   0% 20 20 0   100% 0 0   0%
tests / test_matplotlibFormatter.py (no class)   86% 22 3 0   50% 2 1   83%
tests / test_normalFormExpression.py BooleanEvaluationTreeVisitor   0% 17 17 0   0% 6 0   0%
tests / test_normalFormExpression.py NormalFormExpressionTestCase   0% 30 30 0   0% 12 0   0%
tests / test_normalFormExpression.py (no class)   96% 23 1 0   50% 2 1   92%
tests / test_packages.py PackagesFormatterTestCase   0% 10 10 0   100% 0 0   0%
tests / test_packages.py (no class)   92% 12 1 0   50% 2 1   86%
tests / test_parquet.py ParquetFormatterTestCase   0% 35 35 0   100% 0 0   0%
tests / test_parquet.py (no class)   84% 19 3 0   50% 2 1   81%
tests / test_postgresql.py PostgresqlDatabaseTestCase   0% 44 44 0   0% 2 0   0%
tests / test_postgresql.py PostgresqlRegistryTests   0% 15 15 0   0% 4 0   0%
tests / test_postgresql.py PostgresqlRegistryNameKeyCollMgrTestCase   0% 4 4 0   0% 2 0   0%
tests / test_postgresql.py PostgresqlRegistryNameKeyCollMgrUUIDTestCase   100% 0 0 0   100% 0 0   100%
tests / test_postgresql.py PostgresqlRegistrySynthIntKeyCollMgrUUIDTestCase   100% 0 0 0   100% 0 0   100%
tests / test_postgresql.py (no class)   90% 59 6 0   50% 2 1   89%
tests / test_progress.py MockProgressBar   0% 10 10 0   0% 2 0   0%
tests / test_progress.py MockProgressHandler   0% 1 1 0   100% 0 0   0%
tests / test_progress.py ClickProgressHandlerTestCase   0% 25 25 0   100% 0 0   0%
tests / test_progress.py MockedProgressHandlerTestCase   0% 28 28 0   0% 6 0   0%
tests / test_progress.py (no class)   97% 33 1 0   50% 2 1   94%
tests / test_quantum.py MockTask   100% 0 0 0   100% 0 0   100%
tests / test_quantum.py QuantumTestCase   0% 64 64 0   0% 2 0   0%
tests / test_quantum.py (no class)   93% 14 1 0   50% 2 1   88%
tests / test_quantumBackedButler.py QuantumBackedButlerTestCase   0% 186 186 0   0% 56 0   0%
tests / test_quantumBackedButler.py (no class)   95% 21 1 0   50% 2 1   91%
tests / test_simpleButler.py SimpleButlerTestCase   0% 241 241 0   0% 28 0   0%
tests / test_simpleButler.py SimpleButlerUUIDTestCase   100% 0 0 0   100% 0 0   100%
tests / test_simpleButler.py SimpleButlerMixedUUIDTestCase   100% 0 0 0   100% 0 0   100%
tests / test_simpleButler.py (no class)   94% 48 3 0   50% 2 1   92%
tests / test_sqlite.py SqliteFileDatabaseTestCase   0% 34 34 0   100% 0 0   0%
tests / test_sqlite.py SqliteMemoryDatabaseTestCase   0% 19 19 0   100% 0 0   0%
tests / test_sqlite.py SqliteFileRegistryTests   0% 11 11 0   0% 4 0   0%
tests / test_sqlite.py SqliteFileRegistryNameKeyCollMgrTestCase   0% 4 4 0   0% 2 0   0%
tests / test_sqlite.py SqliteFileRegistryNameKeyCollMgrUUIDTestCase   100% 0 0 0   100% 0 0   100%
tests / test_sqlite.py SqliteFileRegistrySynthIntKeyCollMgrUUIDTestCase   100% 0 0 0   100% 0 0   100%
tests / test_sqlite.py SqliteMemoryRegistryTests   0% 10 10 0   0% 2 0   0%
tests / test_sqlite.py SqliteMemoryRegistryNameKeyCollMgrUUIDTestCase   100% 0 0 0   100% 0 0   100%
tests / test_sqlite.py SqliteMemoryRegistrySynthIntKeyCollMgrUUIDTestCase   100% 0 0 0   100% 0 0   100%
tests / test_sqlite.py (no class)   82% 74 13 0   50% 2 1   82%
tests / test_storageClass.py PythonType   100% 0 0 0   100% 0 0   100%
tests / test_storageClass.py StorageClassFactoryTestCase   0% 161 161 0   0% 4 0   0%
tests / test_storageClass.py (no class)   96% 23 1 0   50% 2 1   92%
tests / test_templates.py TestFileTemplates   0% 153 153 0   0% 4 0   0%
tests / test_templates.py (no class)   95% 19 1 0   50% 2 1   90%
tests / test_testRepo.py ButlerUtilsTestSuite   0% 81 81 0   100% 0 0   0%
tests / test_testRepo.py (no class)   96% 25 1 0   50% 2 1   93%
tests / test_time_utils.py TimeTestCase   0% 60 60 0   0% 8 0   0%
tests / test_time_utils.py (no class)   81% 16 3 0   50% 2 1   78%
tests / test_timespan.py TimespanTestCase   0% 123 123 0   0% 36 0   0%
tests / test_timespan.py (no class)   88% 24 3 0   50% 2 1   85%
tests / test_uri.py ButlerURITestCase   0% 10 10 0   0% 2 0   0%
tests / test_uri.py (no class)   83% 6 1 0   50% 2 1   75%
tests / test_utils.py NamedKeyDictTest   0% 50 50 0   100% 0 0   0%
tests / test_utils.py NamedValueSetTest   0% 31 31 0   0% 4 0   0%
tests / test_utils.py GlobToRegexTestCase   0% 10 10 0   0% 6 0   0%
tests / test_utils.py (no class)   97% 31 1 0   50% 2 1   94%
Total     28% 28053 20139 180   3% 6866 118   23%

No items found using the specified filter.