def test_get_dim_indexers(self): mindex = pd.MultiIndex.from_product([['a', 'b'], [1, 2]], names=('one', 'two')) mdata = DataArray(range(4), [('x', mindex)]) dim_indexers = indexing.get_dim_indexers(mdata, {'one': 'a', 'two': 1}) self.assertEqual(dim_indexers, {'x': {'one': 'a', 'two': 1}}) with self.assertRaisesRegexp(ValueError, 'cannot combine'): _ = indexing.get_dim_indexers(mdata, {'x': 'a', 'two': 1}) with self.assertRaisesRegexp(ValueError, 'do not exist'): _ = indexing.get_dim_indexers(mdata, {'y': 'a'}) _ = indexing.get_dim_indexers(data, {'four': 1})
def test_get_dim_indexers(self): mindex = pd.MultiIndex.from_product([["a", "b"], [1, 2]], names=("one", "two")) mdata = DataArray(range(4), [("x", mindex)]) dim_indexers = indexing.get_dim_indexers(mdata, {"one": "a", "two": 1}) assert dim_indexers == {"x": {"one": "a", "two": 1}} with raises_regex(ValueError, "cannot combine"): indexing.get_dim_indexers(mdata, {"x": "a", "two": 1}) with raises_regex(ValueError, "do not exist"): indexing.get_dim_indexers(mdata, {"y": "a"}) with raises_regex(ValueError, "do not exist"): indexing.get_dim_indexers(mdata, {"four": 1})