def muda_atributos(pol, mods_mem): global cache, nome_tb, letra_tb, colunas, diags assert pol != None and type(pol) is poltrona.Objeto_Poltrona erros = valida_atributos(pol, mods_mem) if len(erros) != 0: raise ErroAtrib(erros) objeto.muda_atributos(pol, mods_mem, cache, nome_tb, letra_tb, colunas, def_obj_mem) return
def muda_atributos(ses, mods_mem): global cache, nome_tb, letra_tb, colunas, diags erros = valida_atributos(ses, mods_mem) if len(erros) != 0: raise ErroAtrib(erros) objeto.muda_atributos(ses, mods_mem, cache, nome_tb, letra_tb, colunas, def_obj_mem) return
def muda_atributos(cpr, mods_mem): global cache, nome_tb, letra_tb, colunas, diags assert cpr != None and type(cpr) is compra.Objeto_Compra erros = valida_atributos(cpr, mods_mem) if len(erros) != 0: raise ErroAtrib(erros) objeto.muda_atributos(cpr, mods_mem, cache, nome_tb, letra_tb, colunas, def_obj_mem) return
def muda_atributos(usr, mods_mem): global cache, nome_tb, letra_tb, colunas, diags erros = valida_atributos(usr, mods_mem) if len(erros) != 0: raise ErroAtrib(erros) sys.stderr.write("\n") sys.stderr.write("usr antes = %s\n" % str(usr)) sys.stderr.write("mods_mem = %s\n" % str(mods_mem)) objeto.muda_atributos(usr, mods_mem, cache, nome_tb, letra_tb, colunas, def_obj_mem) sys.stderr.write("usr depois = %s\n" % str(usr)) sys.stderr.write("\n") return
obj2_atrs = {'coisa': 200, 'treco': 201, 'lhufas': "duzentos"} obj2_ind = 2 obj2_id = ("X-%08d" % obj2_ind) obj2 = testa_cria_objeto("obj2", obj2_id, obj2_atrs) obj3_atrs = {'coisa': 300, 'treco': 301, 'lhufas': "trezentos"} obj3_ind = 3 obj3_id = ("X-%08d" % obj3_ind) obj3 = testa_cria_objeto("obj3", obj3_id, obj3_atrs) # ---------------------------------------------------------------------- sys.stderr.write("testando {objeto.muda_atributos}:\n") obj1_mods = {'coisa': 109, 'lhufas': "cento e nove"} objeto.muda_atributos(obj1, obj1_mods, cache, nome_tb, letra_tb, colunas, def_obj_mem) obj1_atrs_m = obj1_atrs for k, v in obj1_mods.items(): obj1_atrs_m[k] = v verifica_objeto("obj1_d", obj1, obj1_id, obj1_atrs_m) objeto.muda_atributos(obj2, obj2_atrs, cache, nome_tb, letra_tb, colunas, def_obj_mem) # Não deveria mudar os atributos verifica_objeto("obj2", obj2, obj2_id, obj2_atrs) obj2_atrs_m = obj3_atrs.copy() objeto.muda_atributos(obj2, obj2_atrs_m, cache, nome_tb, letra_tb, colunas, def_obj_mem) # Deveria assumir os valores do obj3 verifica_objeto("obj2_m", obj2, obj2_id, obj2_atrs_m) # ----------------------------------------------------------------------