-
Notifications
You must be signed in to change notification settings - Fork 758
Description
Expected behavior
The test test_file_guess_hydrogens in MDAnalysisTests.analysis.test_dssp is expected to pass when DSSP is run with guess_hydrogens=True, producing secondary structure assignments that match the reference .dssp files shipped with MDAnalysisTests.
Actual behavior
When running the DSSP hydrogen-guessing tests locally, multiple failures occur in test_file_guess_hydrogens.
Specifically:
- Out of 100 selected tests, 22 fail and 78 pass
- Failures occur consistently for the same PDB files
- The failures appear both with the multiprocessing backend and the serial backend
- The mismatches are small and localized, typically involving helix (H) or strand (E) boundary assignments, often differing by a single residue
- The output strings always have the same length and overall structure, but exact string comparison fails due to these small boundary shifts.
This suggests an environment or execution-sensitive behavior rather than an installation or setup issue.
Code to reproduce the behavior
The issue can be reproduced by running only the DSSP hydrogen-guessing tests:
pytest --pyargs MDAnalysisTests.analysis.test_dssp -k guess_hydrogens -vv
This selects 100 tests (12 deselected), of which 22 fail on my system.
Failures occur for the same structures under both client_DSSP0 (multiprocessing) and client_DSSP1 (serial).
Example failing structures include (3gknA.pdb.gz, 2j49A.pdb.gz, 3aqgA.pdb.gz, 3nzmA.pdb.gz, 3hklA.pdb.gz, 3l4rA.pdb.gz, 3e8mA.pdb.gz, 2fvvA.pdb.gz, 3a4rA.pdb.gz, 3gfsA.pdb.gz, 1eteA.pdb.gz etc.)
All failures show similar off-by-one or boundary-level differences in DSSP assignments.
Current version of MDAnalysis
- MDAnalysis version: 2.11.0-dev0 (editable install from source)
- Python version: 3.11.0rc1
- Operating system: Ubuntu 22.04 (Linux)
Additional context:
- MDAnalysis built from source with C extensions compiled
- MDAnalysisTests installed via pip
- The broader test suite passes, with failures isolated to DSSP hydrogen guessing
@orbeckst