def test_reindex_empty(self): # sequence empty msa = TabularMSA([]) msa.reindex() self.assertEqual(msa, TabularMSA([])) self.assertFalse(msa.has_keys()) msa.reindex(key=str) self.assertEqual(msa, TabularMSA([], key=str)) npt.assert_array_equal(msa.keys, np.array([])) msa.reindex(keys=iter([])) self.assertEqual(msa, TabularMSA([], keys=iter([]))) npt.assert_array_equal(msa.keys, np.array([])) # position empty msa = TabularMSA([DNA('')]) msa.reindex() self.assertEqual(msa, TabularMSA([DNA('')])) self.assertFalse(msa.has_keys()) msa.reindex(key=str) self.assertEqual(msa, TabularMSA([DNA('')], key=str)) npt.assert_array_equal(msa.keys, np.array([''])) msa.reindex(keys=iter(['a'])) self.assertEqual(msa, TabularMSA([DNA('')], keys=iter(['a']))) npt.assert_array_equal(msa.keys, np.array(['a']))
def test_reindex_non_empty(self): msa = TabularMSA( [DNA('ACG', metadata={'id': 1}), DNA('AAA', metadata={'id': 2})], key=str) npt.assert_array_equal(msa.keys, np.array(['ACG', 'AAA'])) msa.reindex(key='id') self.assertEqual( msa, TabularMSA([ DNA('ACG', metadata={'id': 1}), DNA('AAA', metadata={'id': 2}) ], key='id')) npt.assert_array_equal(msa.keys, np.array([1, 2])) msa.reindex(keys=iter('ab')) self.assertEqual( msa, TabularMSA([ DNA('ACG', metadata={'id': 1}), DNA('AAA', metadata={'id': 2}) ], keys=iter('ab'))) npt.assert_array_equal(msa.keys, np.array(['a', 'b'])) msa.reindex() self.assertFalse(msa.has_keys())
def test_keys_setter_non_empty(self): msa = TabularMSA([DNA('AC'), DNA('AG'), DNA('AT')]) self.assertFalse(msa.has_keys()) msa.keys = range(3) npt.assert_array_equal(msa.keys, np.array([0, 1, 2])) msa.keys = range(3, 6) npt.assert_array_equal(msa.keys, np.array([3, 4, 5]))
def test_has_keys(self): self.assertFalse(TabularMSA([]).has_keys()) self.assertTrue(TabularMSA([], key=str).has_keys()) self.assertFalse(TabularMSA([DNA('')]).has_keys()) self.assertTrue(TabularMSA([DNA('')], key=str).has_keys()) self.assertFalse(TabularMSA([DNA('ACG'), DNA('GCA')]).has_keys()) self.assertTrue( TabularMSA([DNA('ACG', metadata={'id': 1}), DNA('GCA', metadata={'id': 2})], key='id').has_keys()) msa = TabularMSA([]) self.assertFalse(msa.has_keys()) msa.reindex(key=str) self.assertTrue(msa.has_keys()) msa.reindex() self.assertFalse(msa.has_keys())
def test_has_keys(self): self.assertFalse(TabularMSA([]).has_keys()) self.assertTrue(TabularMSA([], key=str).has_keys()) self.assertFalse(TabularMSA([DNA('')]).has_keys()) self.assertTrue(TabularMSA([DNA('')], key=str).has_keys()) self.assertFalse(TabularMSA([DNA('ACG'), DNA('GCA')]).has_keys()) self.assertTrue( TabularMSA([ DNA('ACG', metadata={'id': 1}), DNA('GCA', metadata={'id': 2}) ], key='id').has_keys()) msa = TabularMSA([]) self.assertFalse(msa.has_keys()) msa.reindex(key=str) self.assertTrue(msa.has_keys()) msa.reindex() self.assertFalse(msa.has_keys())
def test_reindex_non_empty(self): msa = TabularMSA([DNA('ACG', metadata={'id': 1}), DNA('AAA', metadata={'id': 2})], key=str) npt.assert_array_equal(msa.keys, np.array(['ACG', 'AAA'])) msa.reindex(key='id') self.assertEqual( msa, TabularMSA([DNA('ACG', metadata={'id': 1}), DNA('AAA', metadata={'id': 2})], key='id')) npt.assert_array_equal(msa.keys, np.array([1, 2])) msa.reindex(keys=iter('ab')) self.assertEqual( msa, TabularMSA([DNA('ACG', metadata={'id': 1}), DNA('AAA', metadata={'id': 2})], keys=iter('ab'))) npt.assert_array_equal(msa.keys, np.array(['a', 'b'])) msa.reindex() self.assertFalse(msa.has_keys())
def test_keys_deleter_with_keys(self): msa = TabularMSA([RNA('UUU'), RNA('AAA')], key=str) self.assertTrue(msa.has_keys()) del msa.keys self.assertFalse(msa.has_keys())
def test_keys_deleter_no_keys(self): msa = TabularMSA([]) self.assertFalse(msa.has_keys()) del msa.keys self.assertFalse(msa.has_keys())
def test_keys_setter_empty(self): msa = TabularMSA([]) self.assertFalse(msa.has_keys()) msa.keys = iter([]) npt.assert_array_equal(msa.keys, np.array([]))