Adding automated input/output spec checking to MissionSim. This required updating how TargetList stored the remains of dropped StarCatalogs (previously just the original entry in modules in the input specification, now the actual class of the StarCatalog object), and updating SurveySimulation.genOutSpec to also include MissionSim's outspec.
Once all modules are instantiated in MissionSim, all arguments to all modules (and all of their base classes) are collected into a single list (functionality provided by new keyword_fun util). This list is then compared against both the input specification and outspec and warnings are generated if there are unused inputs or uncaptured keywords in the output. Checking can be toggled off with new input checkInputs.
Type of change
[x] New feature (non-breaking change which adds functionality)
[x] This change requires a documentation update
Reference any relevant issues
N/A
Checklist before requesting a review
[x] I have verified that all unit tests pass in a clean virtual environment and added new unit tests, as needed
[x] I have run e2eTests and added new test scripts, as needed
[x] I have verified that all docstrings are properly formatted and added new documentation, as needed
Describe your changes
Adding automated input/output spec checking to MissionSim. This required updating how TargetList stored the remains of dropped StarCatalogs (previously just the original entry in modules in the input specification, now the actual class of the StarCatalog object), and updating SurveySimulation.genOutSpec to also include MissionSim's outspec.
Once all modules are instantiated in
MissionSim
, all arguments to all modules (and all of their base classes) are collected into a single list (functionality provided by newkeyword_fun
util). This list is then compared against both the input specification and outspec and warnings are generated if there are unused inputs or uncaptured keywords in the output. Checking can be toggled off with new inputcheckInputs
.Type of change
Reference any relevant issues
N/A
Checklist before requesting a review
e2eTests
and added new test scripts, as needed