smiths / caseStudies

Case studies of (manual) documentation for scientific computing software
3 stars 2 forks source link

'make test' fails in SolarWaterHeatingOnly/Python #85

Open elwazana opened 6 years ago

elwazana commented 6 years ago

@smiths Hello Dr. Smith, so @niazim3 told me I can run make test in the example to check if the test cases themselves run. I did and I got this following error, I'm going to bring it up in the meeting but I wanted to primitively create an issue for it.

image

Mornix commented 6 years ago

Looks like you're missing matplotlib. It can be installed through pip with pip install matplotlib (I believe pip is installed by default on WSL.)

elwazana commented 6 years ago

@Mornix Already have it installed, I got this error checked that I have it and ran make test again still getting this error message.

Mornix commented 6 years ago

Can you post the output of which python which pip

elwazana commented 6 years ago

image

smiths commented 6 years ago

@elwazana, did something change since you did your initial review of the solar water heating code, or did you not run make test when you reviewed the code?

You should also check

python --version

Actually, I just ran make test with Python 2 and 3 and everything seemed to be fine in both cases. I guess the code doesn't use print statements, at least not for make test.

From your error message, the problem is definitely due to not finding matplotlib. I'm sure you do have it installed, but Python doesn't know where to find it. You may have installed matplotlib for the wrong version of Python. I suggest that you google something about python matplotlib not found. You'll get hits like:

https://stackoverflow.com/questions/18176591/importerror-no-module-named-matplotlib-pyplot

Once you do get make test working we should create issues for the failing test cases. I was surprised to see that make test failed one of the tests because of a divide by zero error. This error suggests to me that loading parameters, calculating parameters and verifying the input should be reorganized in the design. We can discuss this once you get make test working.