def test_encodes_short_residue_id_without_sequence(self): val = encode({ 'pdb': '2AVY', 'model': '1', 'chain': 'A', 'component_number': '50', }) ans = '2AVY|1|A||50' self.assertEqual(val, ans)
def test_encodes_residue_id_with_numbers(self): val = encode({ 'pdb': '2AVY', 'model': 1, 'chain': 'A', 'component_id': 'C', 'component_number': 50, }) ans = '2AVY|1|A|C|50' self.assertEqual(val, ans)
def unit_id(self): """Get the unit id for this structure """ return encode({ 'pdb': self.pdb, 'model': self.model, 'chain': self.chain, 'symmetry': self.symmetry })
def test_encodes_residue_id_without_sequence(self): val = encode({ 'pdb': '2AVY', 'model': 1, 'chain': 'A', 'component_number': 50, 'symmetry': '6_555' }) ans = '2AVY|1|A||50||||6_555' self.assertEqual(val, ans)
def test_encodes_full_residue_id_using_defaults(self): val = encode({ 'pdb': '2AVY', 'model': '1', 'chain': 'A', 'component_id': 'C', 'component_number': '50', }, full=True) ans = '2AVY|1|A|C|50||||1_555' self.assertEqual(val, ans)
def test_encodes_short_residue_id_with_default_symmetry(self): val = encode({ 'pdb': '2AVY', 'model': '1', 'chain': 'A', 'component_id': 'C', 'component_number': '50', 'symmetry': '1_555' }) ans = '2AVY|1|A|C|50' self.assertEqual(val, ans)
def test_can_generate_full_atom_id_missing_stuff(self): val = encode({ 'pdb': '2AVY', 'model': 1, 'chain': 'A', 'component_id': 'C', 'component_number': 50, 'atom_name': "C1'", 'symmetry': '6_555' }, full=True) ans = "2AVY|1|A|C|50|C1'|||6_555" self.assertEqual(val, ans)
def test_encodes_full_residue_id_using_defaults(self): val = encode( { 'pdb': '2AVY', 'model': '1', 'chain': 'A', 'component_id': 'C', 'component_number': '50', }, full=True) ans = '2AVY|1|A|C|50||||1_555' self.assertEqual(val, ans)
def test_can_generate_short_atom_id(self): val = encode({ 'pdb': '2AVY', 'model': 1, 'chain': 'A', 'component_id': 'C', 'component_number': 50, 'atom_name': "C1'", 'alt_id': '', 'insertion_code': '', 'symmetry': '1_555' }) ans = "2AVY|1|A|C|50|C1'" self.assertEqual(val, ans)
def test_encodes_full_residue_id(self): val = encode({ 'pdb': '2AVY', 'model': 1, 'chain': 'A', 'component_id': 'C', 'component_number': 50, 'atom_name': None, 'alt_id': None, 'insertion_code': None, 'symmetry': '1_555' }, full=True) ans = '2AVY|1|A|C|50||||1_555' self.assertEqual(val, ans)
def test_can_generate_full_atom_id_missing_stuff(self): val = encode( { 'pdb': '2AVY', 'model': 1, 'chain': 'A', 'component_id': 'C', 'component_number': 50, 'atom_name': "C1'", 'symmetry': '6_555' }, full=True) ans = "2AVY|1|A|C|50|C1'|||6_555" self.assertEqual(val, ans)
def test_generate_short_with_missing_and_extra(self): val = encode({ 'pdb': '1GID', 'model': 1, 'chain': 'A', 'component_id': 'C', 'component_number': 50, 'atom_name': "C1'", 'symmetry': '6_555', 'x': -1, 'y': 0, 'z': 0, }) ans = "1GID|1|A|C|50|C1'|||6_555" self.assertEqual(val, ans)
def unit_id(self): """Create the unit id for this Atom. :returns: The unit id string. """ return encode({ 'pdb': self.pdb, 'model': self.model, 'chain': self.chain, 'component_id': self.component_id, 'component_number': self.component_number, 'atom_name': self.name, 'alt_id': self.alt_id, 'insertion_code': self.insertion_code, 'symmetry': self.symmetry })
def unit_id(self): """Compute the unit id of this Component. :returns: The unit id. """ return encode({ 'pdb': self.pdb, 'model': self.model, 'chain': self.chain, 'component_id': self.sequence, 'component_number': self.number, 'alt_id': self.alt_id, 'insertion_code': self.insertion_code, 'symmetry': self.symmetry })
def test_encodes_full_residue_id(self): val = encode( { 'pdb': '2AVY', 'model': 1, 'chain': 'A', 'component_id': 'C', 'component_number': 50, 'atom_name': None, 'alt_id': None, 'insertion_code': None, 'symmetry': '1_555' }, full=True) ans = '2AVY|1|A|C|50||||1_555' self.assertEqual(val, ans)
def component_unit_id(self): """Generate the unit id of the component this atom belongs to. :returns: A string of the unit id for this atom's component. """ return encode({ 'pdb': self.pdb, 'model': self.model, 'chain': self.chain, 'component_id': self.component_id, 'component_number': self.component_number, 'alt_id': self.alt_id, 'insertion_code': self.insertion_code, 'symmetry': self.symmetry })
def test_round_trips_an_id(self): ans = '2AVY|1|A|C|50' val = encode(decode(ans)) self.assertEqual(val, ans)