def _sort_out_downed_chips_cores(downed_chips, downed_cores): """ Translate the down cores and down chips string into a form that \ spinnman can understand :param downed_cores: string representing down cores :type downed_cores: str :param downed_chips: string representing down chips :type: downed_chips: str :return: a list of down cores and down chips in processor and \ core subset format """ ignored_chips = None ignored_cores = None if downed_chips is not None and downed_chips != "None": ignored_chips = CoreSubsets() for downed_chip in downed_chips.split(":"): x, y = downed_chip.split(",") ignored_chips.add_core_subset(CoreSubset(int(x), int(y), [])) if downed_cores is not None and downed_cores != "None": ignored_cores = CoreSubsets() for downed_core in downed_cores.split(":"): x, y, processor_id = downed_core.split(",") ignored_cores.add_processor(int(x), int(y), int(processor_id)) return ignored_chips, ignored_cores
def test_add_processor(self): proc_list = [0,1,2,3,5,8,13] cs = CoreSubset(0,0,proc_list) css = CoreSubsets() css.add_core_subset(cs) self.assertIn(cs,css.core_subsets) for core_subset in css.core_subsets: self.assertIn(core_subset,[cs])
def test_add_core_subset_duplicate_core_subset(self): proc_list = [0,1,2,3,5,8,13] cs = CoreSubset(0,0,proc_list) css = CoreSubsets([cs]) with self.assertRaises(SpinnmanInvalidParameterException): css.add_core_subset(cs)