choderalab / ensembler

Automated omics-scale protein modeling and simulation setup.
http://ensembler.readthedocs.io/
GNU General Public License v2.0
52 stars 21 forks source link

Some test failures on `osx` #36

Closed jchodera closed 9 years ago

jchodera commented 9 years ago

I noticed some nosetest failures on osx:

======================================================================
ERROR: ensembler.tests.test_loopmodel.test_pdbfix_KC1D_HUMAN_D0_4KB8_D
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
    self.test(*self.arg)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/tests/test_loopmodel.py", line 32, in test_pdbfix_KC1D_HUMAN_D0_4KB8_D
    assert (0, 278) not in missing_residues
TypeError: argument of type 'NoneType' is not iterable
-------------------- >> begin captured logging << --------------------
info: ERROR: MPI rank 0 pdbfixer error for template KC1D_HUMAN_D0_4KB8_D - see logfile
--------------------- >> end captured logging << ---------------------

======================================================================
ERROR: ensembler.tests.test_loopmodel.test_pdbfix_ABL1_HUMAN_D0_2E2B_B
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
    self.test(*self.arg)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/tests/test_loopmodel.py", line 59, in test_pdbfix_ABL1_HUMAN_D0_2E2B_B
    assert (0, 271) not in missing_residues
TypeError: argument of type 'NoneType' is not iterable
-------------------- >> begin captured logging << --------------------
info: ERROR: MPI rank 0 pdbfixer error for template ABL1_HUMAN_D0_2E2B_B - see logfile
--------------------- >> end captured logging << ---------------------

======================================================================
ERROR: ensembler.tests.test_loopmodel.test_find_loopmodel_executable
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
    self.test(*self.arg)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/tests/test_loopmodel.py", line 110, in test_find_loopmodel_executable
    ensembler.core.find_loopmodel_executable()
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/core.py", line 542, in find_loopmodel_executable
    for filename in os.listdir(path):
OSError: [Errno 20] Not a directory: '/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home//bin/java'

======================================================================
ERROR: ensembler.tests.test_loopmodel.test_loopmodel_KC1D_HUMAN_D0_4KB8_D
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
    self.test(*self.arg)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/tests/test_loopmodel.py", line 122, in test_loopmodel_KC1D_HUMAN_D0_4KB8_D
    loopmodel_template(template, missing_residues)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/modeling.py", line 232, in loopmodel_template
    write_loop_file(template, missing_residues)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/modeling.py", line 257, in write_loop_file
    loop_residues_data = [(key[1], len(residues)) for key, residues in missing_residues.iteritems()]
AttributeError: 'NoneType' object has no attribute 'iteritems'
-------------------- >> begin captured logging << --------------------
info: INFO: Done.
info: INFO: Done.
info: ERROR: MPI rank 0 pdbfixer error for template KC1D_HUMAN_D0_4KB8_D - see logfile
--------------------- >> end captured logging << ---------------------

======================================================================
ERROR: ensembler.tests.test_loopmodel.test_loopmodel_KC1D_HUMAN_D0_4HNF_A
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
    self.test(*self.arg)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/tests/test_loopmodel.py", line 136, in test_loopmodel_KC1D_HUMAN_D0_4HNF_A
    loopmodel_template(template, missing_residues)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/modeling.py", line 232, in loopmodel_template
    write_loop_file(template, missing_residues)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/modeling.py", line 257, in write_loop_file
    loop_residues_data = [(key[1], len(residues)) for key, residues in missing_residues.iteritems()]
AttributeError: 'NoneType' object has no attribute 'iteritems'
-------------------- >> begin captured logging << --------------------
info: INFO: Done.
info: INFO: Done.
info: ERROR: MPI rank 0 pdbfixer error for template KC1D_HUMAN_D0_4HNF_A - see logfile
--------------------- >> end captured logging << ---------------------

======================================================================
ERROR: No missing residues
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
    self.test(*self.arg)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/tests/test_loopmodel.py", line 153, in test_loopmodel_KC1D_HUMAN_D0_3UZP_A
    loopmodel_template(template, missing_residues)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/modeling.py", line 232, in loopmodel_template
    write_loop_file(template, missing_residues)
  File "/Users/choderaj/anaconda/lib/python2.7/site-packages/ensembler-1.0.3-py2.7.egg/ensembler/modeling.py", line 257, in write_loop_file
    loop_residues_data = [(key[1], len(residues)) for key, residues in missing_residues.iteritems()]
AttributeError: 'NoneType' object has no attribute 'iteritems'
-------------------- >> begin captured logging << --------------------
info: INFO: Done.
info: INFO: Done.
info: ERROR: MPI rank 0 pdbfixer error for template KC1D_HUMAN_D0_3UZP_A - see logfile
--------------------- >> end captured logging << ---------------------
danielparton commented 9 years ago

The first two are surprising to me - they pass on my MacBook. I'm planning to modify those functions so that they will print more useful info during tests. It would be good to try this again once I have done that.

The other test failures are presumably because you don't have Rosetta loopmodel installed. Those tests have the "non_conda_dependencies" attrib. To run only tests without dependencies, use nosetests ensembler -a unit.

jchodera commented 9 years ago

Some of these failures are also showing up in the Jenkins osx conda packaging runs as errors: https://jenkins.choderalab.org/job/conda-omnia-release-osx-2/181/console

Any chance you can look into this?

danielparton commented 9 years ago

These failures are fixed now. They were actually due to an update to pdbfixer. I have now pinned a specific version of pdbfixer in the conda recipe requirements.