def test_get_record_id(self): '''Tests get_record_id method.''' ice_entry1 = ice_utils.ICEEntry(typ='PLASMID') self.__ice_client.set_ice_entry(ice_entry1) self.assertNotEqual(ice_entry1.get_record_id(), None) ice_entry2 = ice_utils.ICEEntry(metadata={'type': 'PLASMID'}) self.__ice_client.set_ice_entry(ice_entry2) self.assertNotEqual(ice_entry2.get_record_id(), None)
def test_set_values(self): '''Tests set_values method.''' ice_entry1 = ice_utils.ICEEntry(typ='PLASMID') ice_entry1.set_values({'creator': 'God', 'name': 'Test'}) self.assertEqual(ice_entry1.get_metadata()['type'], 'PLASMID') self.assertEqual(ice_entry1.get_metadata()['creator'], 'God') self.assertEqual(ice_entry1.get_metadata()['name'], 'Test') ice_entry2 = ice_utils.ICEEntry(metadata={'type': 'PLASMID'}) ice_entry2.set_values({'creator': 'God', 'name': 'Test'}) self.assertEqual(ice_entry2.get_metadata()['type'], 'PLASMID') self.assertEqual(ice_entry2.get_metadata()['creator'], 'God') self.assertEqual(ice_entry2.get_metadata()['name'], 'Test')
def write_ice_entry(ice_client, ice_id1, ice_id2, typ, write_seq, group_names): '''Write a composite ICE entry (part in plasmid, or plasmid in strain).''' comp1 = ice_client.get_ice_entry(ice_id1) comp2 = ice_client.get_ice_entry(ice_id2) name = comp1.get_metadata()['name'] + \ ' (' + comp2.get_metadata()['name'] + ')' product = ice_utils.ICEEntry(typ=typ) product.set_values({'name': name[:127], 'shortDescription': name}) taxonomy = comp1.get_parameter('Taxonomy') if taxonomy: product.set_parameter('Taxonomy', taxonomy) ice_client.set_ice_entry(product) ice_client.add_link(product.get_ice_id(), comp1.get_ice_id()) ice_client.add_link(product.get_ice_id(), comp2.get_ice_id()) if write_seq: product.set_dna(dna_utils.concat([comp1.get_dna(), comp2.get_dna()])) ice_client.set_ice_entry(product) if group_names: groups = ice_client.get_groups() for group_name in group_names: ice_client.add_permission(product.get_ice_id(), groups[group_name]) return product, comp1, comp2
def test_set_get_parameter(self): '''Tests set/get_parameter method.''' ice_entry = ice_utils.ICEEntry(typ='PLASMID') ice_entry.set_parameter('Cheese', 'Brie') self.__ice_client.set_ice_entry(ice_entry) ice_entry = self.__ice_client.get_ice_entry(ice_entry.get_ice_id()) self.assertEqual(ice_entry.get_parameter('Cheese'), 'Brie')
def test_get_seq(self): '''Tests get_seq method.''' dna = _read('sbol.xml') ice_entry = ice_utils.ICEEntry(typ='PLASMID', dna=dna) self.__ice_client.set_ice_entry(ice_entry) ice_entry = self.__ice_client.get_ice_entry(ice_entry.get_ice_id()) self.assertEqual(ice_entry.get_seq(), dna['seq'])
def test_add_permission(self): '''Tests add_permission method.''' dna = _read('sbol.xml') ice_entry = ice_utils.ICEEntry(typ='PLASMID', dna=dna) self.__ice_client.set_ice_entry(ice_entry) groups = self.__ice_client.get_groups() for group_num in groups.values(): self.__ice_client.add_permission(ice_entry.get_ice_id(), group_num)
def test_get_ice_entry(self): '''Tests get_ice_entry method.''' dna = _read('sbol.xml') ice_entry_in = ice_utils.ICEEntry(typ='PART', dna=dna) self.__ice_client.set_ice_entry(ice_entry_in) ice_entry_out = self.__ice_client.get_ice_entry( ice_entry_in.get_ice_number()) self.assertEqual(ice_entry_out.get_seq(), dna['seq'])
def test_get_ice_entries_by_seq(self): '''Tests get_ice_entries_by_seq method.''' dna = _read('sbol.xml') # dna.set_seq(sequence_utils.get_random_dna(4096)) ice_entry = ice_utils.ICEEntry(typ='PLASMID', dna=dna) self.__ice_client.set_ice_entry(ice_entry) self.__ice_client.reconnect() result = self.__ice_client.get_ice_entries_by_seq(dna['seq']) self.assertTrue(len(result) > 0)
def test_set_ice_entry(self): '''Tests set_ice_entry method.''' dna_in = _read('sbol.xml') ice_entry_in = ice_utils.ICEEntry(typ='PLASMID', dna=dna_in) self.__ice_client.set_ice_entry(ice_entry_in) ice_entry_out = self.__ice_client.get_ice_entry( ice_entry_in.get_ice_number()) self.assertNotEqual(ice_entry_out, None)
def test_set_value(self): '''Tests set_value method.''' ice_entry1 = ice_utils.ICEEntry(typ='PLASMID') ice_entry1.set_value('creator', 'God') self.assertEqual(ice_entry1.get_metadata()['type'], 'PLASMID') self.assertEqual(ice_entry1.get_metadata()['creator'], 'God') self.__ice_client.set_ice_entry(ice_entry1) ice_entry2 = self.__ice_client.get_ice_entry( ice_entry1.get_ice_number()) ice_entry2.set_value('creator', 'Aitor Karanka') self.__ice_client.set_ice_entry(ice_entry2) ice_entry3 = self.__ice_client.get_ice_entry( ice_entry1.get_ice_number()) self.assertEqual(ice_entry3.get_metadata()['creator'], 'Aitor Karanka') ice_entry4 = ice_utils.ICEEntry(metadata={'type': 'PLASMID'}) ice_entry4.set_value('creator', 'God') self.assertEqual(ice_entry4.get_metadata()['type'], 'PLASMID') self.assertEqual(ice_entry4.get_metadata()['creator'], 'God')
def test_set_dna(self): '''Tests set_dna method.''' dna1 = _read('sbol.xml') dna2 = _read('sbol2.xml') ice_entry = ice_utils.ICEEntry(typ='PLASMID', dna=dna1) self.__ice_client.set_ice_entry(ice_entry) ice_entry.set_dna(dna2) self.__ice_client.set_ice_entry(ice_entry) self.assertEqual(ice_entry.get_seq(), dna2['seq'])
def test_add_link(self): '''Tests add_link method.''' dna1 = _read('sbol.xml') dna2 = _read('sbol2.xml') ice_entry1 = ice_utils.ICEEntry(typ='PLASMID', dna=dna1) self.__ice_client.set_ice_entry(ice_entry1) ice_entry2 = ice_utils.ICEEntry(typ='PLASMID', dna=dna2) self.__ice_client.set_ice_entry(ice_entry2) self.__ice_client.add_link(ice_entry1.get_ice_number(), ice_entry2.get_ice_number()) # "Refresh" (update metadata) ice_entry1 = self.__ice_client.get_ice_entry(ice_entry1.get_ice_id()) ice_entry2 = self.__ice_client.get_ice_entry(ice_entry2.get_ice_id()) self.assertTrue(ice_entry1.get_ice_number( ) in [par['id'] for par in ice_entry2.get_metadata()['parents']]) self.assertTrue(ice_entry2.get_ice_number( ) in [link['id'] for link in ice_entry1.get_metadata()['linkedParts']])
def test_get_sbol_doc(self): '''Tests get_sbol_doc method.''' dna = _read('sbol.xml') ice_entry = ice_utils.ICEEntry(typ='PLASMID', dna=dna) self.assertEqual(ice_entry.get_dna(), dna)
def test_get_metadata(self): '''Tests get_metadata method.''' ice_entry1 = ice_utils.ICEEntry(typ='PLASMID') self.assertEqual(ice_entry1.get_metadata()['type'], 'PLASMID') ice_entry2 = ice_utils.ICEEntry(metadata={'type': 'PLASMID'}) self.assertEqual(ice_entry2.get_metadata()['type'], 'PLASMID')
def test_get_ice_number_none(self): '''Tests get_ice_number method.''' ice_entry1 = ice_utils.ICEEntry(typ='PLASMID') self.assertEqual(ice_entry1.get_ice_number(), None) ice_entry2 = ice_utils.ICEEntry(metadata={'type': 'PLASMID'}) self.assertEqual(ice_entry2.get_ice_number(), None)