Details
-
Type:
Story
-
Status: To Do
-
Resolution: Unresolved
-
Fix Version/s: None
-
Component/s: afw
-
Labels:None
-
Story Points:6
-
Epic Link:
-
Team:Data Release Production
Description
The pybind11 port has revealed several places with notably bad test coverage in afw. This is a master ticket that attempts to cover them all (and estimate that work), on the assumption that there's nothing surprisingly tricky about writing those tests. If there is in one or more cases, it should be spun off to new tickets.
- afw.math.BoundedField has no direct tests; tests for a subclass (ChebyshevBoundedField leave some base class methods (notably templated methods) untested.
- afw.geom.LinearTransform and afw.geom.AffineTransform have no direct tests. Indirect tests (test files for other classes) notably do not cover __mul__, __getitem__ and at least some of the matrix accessors.
- afw.geom.Point and afw.geom.Extent constructors from 2-element NumPy arrays (Eigen objects in C++) are not tested.
- afw.geom.ellipses.BaseCore.convolve and Ellipse.convolve are not tested.
- afw.table.BaseRecord.getTable and .table are not tested.
- afw.table.Catalog.clear is not tested.
- afw.table.KeyFlag.isValid are is tested.
- FootprintSet.setMask is not tested.
- ExposureCatalog.sort, .isSorted, and find (the SortedCatalog interface) are not tested.
I have not included missing tests for DefectBase and Footprint in this list because I expect them to be resolved on other tickets.
If we are going productize a libraries package then this seems like a pretty important thing to do. At the moment most of the test coverage for afw is in packages that are not going to be in the libraries product.