SynBioDex / pySBOL

SWIG-Python wrappers implementing SBOL 2.2
Apache License 2.0
25 stars 8 forks source link

Error when running SBOL unit tests #94

Closed bchan closed 5 years ago

bchan commented 5 years ago

With Python 3.7.3, this unit test fails: testPrimarySequenceIteration (sbol.unit_tests.TestComponentDefinitions). Is there an issue with the installation or something else?

bbartley commented 5 years ago

@bchan1298 can you post the full output of the tests? how did you install the package and what OS are you using? Also, if you run the following at the commandline it will tell me more about the particular package version you have installed:

pip show pysbol

Thanks

bchan commented 5 years ago

There were 113 test cases before these that were ok, but the tests at the end caused an error. Here is the output at the end:

testAddComponentDefinition (sbol.unit_tests.TestComponentDefinitions) ... ok
testCDDisplayId (sbol.unit_tests.TestComponentDefinitions) ... ok
testPrimarySequenceIteration (sbol.unit_tests.TestComponentDefinitions) ... ERROR
testRemoveComponentDefinition (sbol.unit_tests.TestComponentDefinitions) ... ok
testAddSeqence (sbol.unit_tests.TestSequences) ... ok
testRemoveSequence (sbol.unit_tests.TestSequences) ... ok
testSeqDisplayId (sbol.unit_tests.TestSequences) ... ok
testSequenceElement (sbol.unit_tests.TestSequences) ... ok
testDiscard (sbol.unit_tests.TestMemory) ... ok
testOwnedObjectIterator (sbol.unit_tests.TestIterators) ... ok

======================================================================
ERROR: testPrimarySequenceIteration (sbol.unit_tests.TestComponentDefinitions)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pySBOL-2.3.0.post10-py3.7.egg/sbol/unit_tests.py", line 503, in testPrimarySequenceIteration
    gene.assemblePrimaryStructure([ promoter, RBS, CDS, terminator ])
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pySBOL-2.3.0.post10-py3.7.egg/sbol/libsbol.py", line 4575, in assemblePrimaryStructure
    return _libsbol.ComponentDefinition_assemblePrimaryStructure(self, *args)
NotImplementedError: Wrong number or type of arguments for overloaded function 'ComponentDefinition_assemblePrimaryStructure'.
  Possible C/C++ prototypes are:
    sbol::ComponentDefinition::assemblePrimaryStructure(std::vector< std::string,std::allocator< std::string > >)
    sbol::ComponentDefinition::assemblePrimaryStructure(std::vector< sbol::ComponentDefinition *,std::allocator< sbol::ComponentDefinition * > >)
    sbol::ComponentDefinition::assemblePrimaryStructure(std::vector< sbol::ComponentDefinition *,std::allocator< sbol::ComponentDefinition * > >,sbol::Document &)
    sbol::ComponentDefinition::assemblePrimaryStructure(PyObject *,PyObject *)
    sbol::ComponentDefinition::assemblePrimaryStructure(PyObject *)

----------------------------------------------------------------------
Ran 116 tests in 545.851s

FAILED (errors=1)

I installed the package with pip on a Mac. Here is the output showing the package version:

Name: pySBOL
Version: 2.3.0.post10
Summary: A module for reading, writing, and constructing genetic designs according to the standardized specifications of the Synthetic Biology Open Language (SBOL).
Home-page: https://github.com/SynBioDex/pySBOL
Author: Bryan Bartley
Author-email: editors@sbolstandard.org
License: Apache-2
Location: /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pySBOL-2.3.0.post10-py3.7.egg
Requires: 
Required-by: 

Thanks!

bbartley commented 5 years ago

Thanks @bchan1298! I think this wheel was generated from a development snapshot, hence the bug.

Depending on your applications, this bug is not critical and you should be able to use other features of the library. However, if you think it is critical for your applications, then I can attempt to deploy an updated wheel with a hotfix.

bchan commented 5 years ago

I don't believe it is critical, so it should be okay for our applications.

Thanks!