def create_test_col(level=0, ot=dict, no_ion=False): if level == 0: return get_value(0, 15, uvals) if ot == dict: res_dict = {} num_kinds = 1 if do_ion and no_ion else (1 if do_dict else 0) + (1 if do_list else 0) for i in xrange(breadth / num_kinds): if do_ion and not no_ion: key = get_key() res_obj = IonObject(restype, name="TestObject %s.%s" % (level, key)) res_obj.addl = create_test_col(level-1, dict, no_ion=True) res_dict[key] = res_obj else: if do_dict: res_dict[get_key()] = create_test_col(level-1, dict) if do_list: res_dict[get_key()] = create_test_col(level-1, list) return res_dict elif ot == list: res_list = [] num_kinds = 1 if do_ion and no_ion else (1 if do_dict else 0) + (1 if do_list else 0) for i in xrange(breadth / num_kinds): if do_ion and not no_ion: res_obj = IonObject(restype, name="TestObject %s.%s" % (level, random.randint(1000, 9999))) res_obj.addl = create_test_col(level-1, dict, no_ion=True) res_list.append(res_obj) else: if do_dict: res_list.append(create_test_col(level-1, dict)) if do_list: res_list.append(create_test_col(level-1, list)) return res_list elif ot == "IonObject": res_obj = IonObject(restype, name="TestObject %s.%s" % (level, random.randint(1000, 9999))) return res_obj
def create_test_col(level=0, ot=dict, no_ion=False): if level == 0: return get_value(0, 15, uvals) if ot == dict: res_dict = {} num_kinds = 1 if do_ion and no_ion else (1 if do_dict else 0) + ( 1 if do_list else 0) for i in xrange(breadth / num_kinds): if do_ion and not no_ion: key = get_key() res_obj = IonObject(restype, name="TestObject %s.%s" % (level, key)) res_obj.addl = create_test_col(level - 1, dict, no_ion=True) res_dict[key] = res_obj else: if do_dict: res_dict[get_key()] = create_test_col(level - 1, dict) if do_list: res_dict[get_key()] = create_test_col(level - 1, list) return res_dict elif ot == list: res_list = [] num_kinds = 1 if do_ion and no_ion else (1 if do_dict else 0) + ( 1 if do_list else 0) for i in xrange(breadth / num_kinds): if do_ion and not no_ion: res_obj = IonObject(restype, name="TestObject %s.%s" % (level, random.randint(1000, 9999))) res_obj.addl = create_test_col(level - 1, dict, no_ion=True) res_list.append(res_obj) else: if do_dict: res_list.append(create_test_col(level - 1, dict)) if do_list: res_list.append(create_test_col(level - 1, list)) return res_list elif ot == "IonObject": res_obj = IonObject(restype, name="TestObject %s.%s" % (level, random.randint(1000, 9999))) return res_obj