def simple_check(self, filename, format, alphabet): id_list = [rec.id for rec in \ SeqIO.parse(open(filename), format, alphabet)] rec_dict = SeqIO.indexed_dict(filename, format, alphabet) self.assertEqual(set(id_list), set(rec_dict.keys())) #This is redundant, I just want to make sure len works: self.assertEqual(len(id_list), len(rec_dict)) #Make sure boolean evaluation works self.assertEqual(bool(id_list), bool(rec_dict)) for key in id_list: self.assert_(key in rec_dict) self.assertEqual(key, rec_dict[key].id) self.assertEqual(key, rec_dict.get(key).id) #Check non-existant keys, try: rec = rec_dict[chr(0)] raise ValueError("Accessing a non-existant key should fail") except KeyError: pass self.assertEqual(rec_dict.get(chr(0)), None) self.assertEqual(rec_dict.get(chr(0), chr(1)), chr(1)) #Now check iteritems... for key, rec in rec_dict.iteritems(): self.assert_(key in id_list) self.assert_(isinstance(rec, SeqRecord)) self.assertEqual(rec.id, key) #Now check non-defined methods... self.assertRaises(NotImplementedError, rec_dict.values) self.assertRaises(NotImplementedError, rec_dict.popitem) self.assertRaises(NotImplementedError, rec_dict.pop, chr(0)) self.assertRaises(NotImplementedError, rec_dict.pop, chr(0), chr(1)) self.assertRaises(NotImplementedError, rec_dict.clear) self.assertRaises(NotImplementedError, rec_dict.__setitem__, "X", None) self.assertRaises(NotImplementedError, rec_dict.copy) self.assertRaises(NotImplementedError, rec_dict.fromkeys, [])
def simple_check(self, filename, format, alphabet) : id_list = [rec.id for rec in \ SeqIO.parse(open(filename), format, alphabet)] rec_dict = SeqIO.indexed_dict(filename, format, alphabet) self.assertEqual(set(id_list), set(rec_dict.keys())) #This is redundant, I just want to make sure len works: self.assertEqual(len(id_list), len(rec_dict)) #Make sure boolean evaluation works self.assertEqual(bool(id_list), bool(rec_dict)) for key in id_list : self.assert_(key in rec_dict) self.assertEqual(key, rec_dict[key].id) self.assertEqual(key, rec_dict.get(key).id) #Check non-existant keys, try : rec = rec_dict[chr(0)] raise ValueError("Accessing a non-existant key should fail") except KeyError : pass self.assertEqual(rec_dict.get(chr(0)), None) self.assertEqual(rec_dict.get(chr(0), chr(1)), chr(1)) #Now check iteritems... for key, rec in rec_dict.iteritems() : self.assert_(key in id_list) self.assert_(isinstance(rec, SeqRecord)) self.assertEqual(rec.id, key) #Now check non-defined methods... self.assertRaises(NotImplementedError, rec_dict.values) self.assertRaises(NotImplementedError, rec_dict.popitem) self.assertRaises(NotImplementedError, rec_dict.pop, chr(0)) self.assertRaises(NotImplementedError, rec_dict.pop, chr(0), chr(1)) self.assertRaises(NotImplementedError, rec_dict.clear) self.assertRaises(NotImplementedError, rec_dict.__setitem__, "X", None) self.assertRaises(NotImplementedError, rec_dict.copy) self.assertRaises(NotImplementedError, rec_dict.fromkeys, [])