I took this over since I had a bit of free time. I hope you don't mind Krzysztof Findeisen.
The existing testComposite.py had a problem: it assumed that you could round trip raw and flat, which is not the case. It is persisted as DecoratedImageU but when the butler gets the data, it adapts the data to LSST standards and turns it into an ExposureU. My solution was two-fold:
- Divide the test into testing get and put.
- For the put test I manually create a raw and flat of the correct data type.
I also changed the use of pickle to write to a string instead of saving to a file, for simplicity.
Note that I changed RotType_x to RotType.x. This is the modern way to do things and I have not wrapped the old way (yet) in afw. If need be I'll add the old constants, but I really hope we can just update the few bits of code that use these constants, instead.
Has a non-trivial dependency on `cameraGeom`, and possibly other code. For now I'll assume this can be fixed as part of
DM-8423.