def test_invert(): for items in _ITEMSETS: omd = OMD(items) iomd = omd.inverted() # first, test all items made the jump assert len(omd.items(multi=True)) == len(iomd.items(multi=True)) for val in omd.values(): assert val in iomd # all values present as keys
def update_projects(self, projects): to_update = OMD([(slugify(p.name), p) for p in projects]) new_list = [] for proj in self.project_list: if proj.name_slug not in to_update: new_list.append(proj) continue new_list.append(to_update.pop(proj.name_slug)) new_list.extend(to_update.values()) self.project_list = new_list
def test_kv_consistency(): for itemset in _ITEMSETS: omd = OMD(itemset) for multi in (True, False): items = omd.items(multi=multi) keys = omd.keys(multi=multi) values = omd.values(multi=multi) assert keys == [x[0] for x in items] assert values == [x[1] for x in items] return