def parameterized_test_case(cls):
    tests_to_remove = []
    tests_to_add = []
    for key, val in six.iteritems(vars(cls)):
        # Only process tests with build data on them
        if key.startswith('test_') and val.__dict__.get('build_data'):
            to_remove, to_add = process_parameterized_function(
                name=key,
                func_obj=val,
                build_data=val.__dict__.get('build_data')
            )
            tests_to_remove.extend(to_remove)
            tests_to_add.extend(to_add)

    # Add all new test functions
    [setattr(cls, name, func) for name, func in tests_to_add]

    # Remove all old test function templates (if they still exist)
    [delattr(cls, key) for key in tests_to_remove if hasattr(cls, key)]
    return cls
Serializing, prefix wrapper for _set_raw
dataset/ETHPy150Open openstack/python-barbicanclient/functionaltests/utils.py/parameterized_test_case--crossover with--dataset/ETHPy150Open mariocesar/sorl-thumbnail/sorl/thumbnail/kvstores/base.py/KVStoreBase._set