mailr18896 - /trunk/test_suite/system_tests/structure.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by edward on March 19, 2013 - 18:14:
Author: bugman
Date: Tue Mar 19 18:14:13 2013
New Revision: 18896

URL: http://svn.gna.org/viewcvs/relax?rev=18896&view=rev
Log:
Created the Structure.test_metadata_xml system test.

This is used to check that the structural metadata (currently helices and 
sheets) are stored in the
relax XML save files and then can be read back into relax again.


Modified:
    trunk/test_suite/system_tests/structure.py

Modified: trunk/test_suite/system_tests/structure.py
URL: 
http://svn.gna.org/viewcvs/relax/trunk/test_suite/system_tests/structure.py?rev=18896&r1=18895&r2=18896&view=diff
==============================================================================
--- trunk/test_suite/system_tests/structure.py (original)
+++ trunk/test_suite/system_tests/structure.py Tue Mar 19 18:14:13 2013
@@ -335,6 +335,48 @@
 
             # Increment the residue counter.
             i = i + 1
+
+
+    def test_metadata_xml(self):
+        """Test the storage and loading of metadata into an XML state 
file."""
+
+        # Load the file.
+        path = status.install_path + 
sep+'test_suite'+sep+'shared_data'+sep+'structures'
+        self.interpreter.structure.read_pdb('1UBQ.pdb', dir=path)
+
+        # Delete a big chunk of the molecule.
+        self.interpreter.structure.delete(":35-76")
+
+        # Delete all waters.
+        self.interpreter.structure.delete(":HOH")
+
+        # Write out the results file.
+        self.tmpfile = mktemp() + '.bz2'
+        self.interpreter.results.write(self.tmpfile, dir=None)
+
+        # Create a new data pipe and load the results.
+        self.interpreter.pipe.create('xml text', 'mf')
+        self.interpreter.results.read(self.tmpfile)
+
+        # What the data should look like.
+        helices = [
+            ['H1', 'A', 'ILE', 23, 'A', 'GLU', 34, 1, 12]
+        ]
+        sheets = [
+            [1, 'BET', 5, 'GLY', 'A', 10, None, 'VAL', 'A', 17, None, 0, 
None, None, None, None, None, None, None, None, None, None],
+            [2, 'BET', 5, 'MET', 'A', 1, None, 'THR', 'A', 7, None, -1, 
None, None, None, None, None, None, None, None, None, None]
+        ]
+
+        # Check the helix data.
+        self.assert_(hasattr(cdp.structure, 'helices'))
+        self.assertEqual(len(cdp.structure.helices), 1)
+        self.assertEqual(cdp.structure.helices[0], helices[0])
+
+        # Check the sheet data.
+        self.assert_(hasattr(cdp.structure, 'sheets'))
+        self.assertEqual(len(cdp.structure.sheets), 2)
+        self.assertEqual(cdp.structure.sheets[0], sheets[0])
+        self.assertEqual(cdp.structure.sheets[1], sheets[1])
 
 
     def test_read_merge(self):




Related Messages


Powered by MHonArc, Updated Tue Mar 19 18:40:02 2013