nismod / smif

Simulation Modelling Integration Framework
http://www.itrc.org.uk
MIT License
22 stars 6 forks source link

Fix/data array names #322

Closed tomalrussell closed 5 years ago

tomalrussell commented 5 years ago

Targets #321 and #316 which are slightly subtle around how Specs are matched in model/scenario dependencies - the pair of Specs must be equal up to name, but we do want to allow matched outputs and inputs to have different names.

DataHandle.get_data:

codecov[bot] commented 5 years ago

Codecov Report

Merging #322 into master will increase coverage by 0.05%. The diff coverage is 93.75%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #322      +/-   ##
==========================================
+ Coverage   69.75%   69.81%   +0.05%     
==========================================
  Files          59       59              
  Lines        5045     5055      +10     
  Branches      605      605              
==========================================
+ Hits         3519     3529      +10     
  Misses       1431     1431              
  Partials       95       95
Flag Coverage Δ
#javascript 69.81% <93.75%> (+0.05%) :arrow_up:
#python 77.79% <93.75%> (+0.05%) :arrow_up:
Impacted Files Coverage Δ
src/smif/data_layer/file/file_data_store.py 86.85% <ø> (ø) :arrow_up:
src/smif/metadata/spec.py 99.1% <100%> (+0.01%) :arrow_up:
src/smif/data_layer/data_handle.py 83.05% <100%> (+0.44%) :arrow_up:
src/smif/data_layer/data_array.py 83.87% <66.66%> (+0.26%) :arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update e0ac8e3...d5b2b5f. Read the comment docs.

tomalrussell commented 5 years ago

Yes, let's document this more explicity. I think it's the common case that the output/input pair in a dependency will be named the same, so should be an easy recommendation.

Yes, after this PR, the store returns the data as originally named, then the data handle changes the name to what's expected by whoever called DataHandle.get_data (typically a model wrapper).