def _generate_raw_params(self, test_cls):
        for param_src in self._param_sources:
            if isinstance(param_src, paramseq):
                for param_inst in param_src._generate_params(test_cls):
                    yield param_inst
            elif isinstance(param_src, collections.Mapping):
                for label, param_item in param_src.items():
                    yield param._from_param_item(param_item).label(label)
            else:
                if isinstance(param_src, collections.Callable):
                    try:
                        param_src = param_src(test_cls)
                    except __HOLE__:
                        param_src = param_src()
                else:
                    assert isinstance(param_src, (collections.Sequence,
                                                  collections.Set))
                for param_item in param_src:
                    yield param._from_param_item(param_item)


# test case *method* or *class* decorator...
dataset/ETHPy150Open zuo/unittest_expander/unittest_expander.py/paramseq._generate_raw_params