def mostrar_todos(self): records = self.formulario.get_children() for element in records: self.formulario.delete(element) socios= NegocioSocio().todos() for socio in socios: self.formulario.insert("", tk.END, text=socio.IdSocio, values=(socio.Nombre, socio.Apellido, socio.DNI))
def __init__(self): Base.metadata.bind = engine self.raiz = Tk() self.raiz.title("Gestion de Socios") self.tree = ttk.Treeview(self.raiz) #Variable self.CN = NegocioSocio() self.Dni = IntVar() self.Nombre = StringVar() self.Apellido = StringVar() #Columnas self.tree["columns"] = ("one", "two", "three") self.tree.column("#0", width=100) self.tree.column("one", width=100) self.tree.column("two", width=100) self.tree.column("three", width=100) self.tree.heading("#0", text="Id") self.tree.heading("one", text="Dni") self.tree.heading("two", text="Nombre") self.tree.heading("three", text="Apellido") #Insert self.boton0 = ttk.Button(self.raiz, text="Agregar", command=self.grilla) self.boton1 = ttk.Button(self.raiz, text="Eliminar", command=self.Baja) self.boton2 = ttk.Button(self.raiz, text="Modificar", command=self.grilla2) self.boton0.grid(row=1, column=5) self.boton1.grid(row=2, column=5) self.boton2.grid(row=3, column=5) lista = self.CN.todoss() for i in lista: self.tree.insert('', 'end', text=str(i.id), values=(i.dni, i.nombre, i.apellido), iid=i.id) self.CN.cerrar() #Loop self.tree.grid() self.raiz.mainloop()
def setUp(self): super(TestsNegocio, self).setUp() self.ns = NegocioSocio()
class TestsNegocio(unittest.TestCase): def setUp(self): super(TestsNegocio, self).setUp() self.ns = NegocioSocio() def tearDown(self): super(TestsNegocio, self).tearDown() self.ns.datos.borrar_todos() def test_alta(self): # pre-condiciones: no hay socios registrados self.assertEqual(len(self.ns.todos()), 0) # ejecuto la logica socio = Socio(dni=12345678, nombre='Juan', apellido='Perez') exito = self.ns.alta(socio) # post-condiciones: 1 socio registrado self.assertTrue(exito) self.assertEqual(len(self.ns.todos()), 1) def test_regla_1(self): socio = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.ns.alta(socio) invalido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertRaises(DniRepetido, self.ns.regla_1, invalido) valido = Socio(dni=20402685, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_1(valido)) def test_regla_2_nombre_menor_3(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre menor a 3 caracteres invalido = Socio(dni=12345678, nombre='J', apellido='Perez') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_nombre_mayor_15(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre mayor a 15 caracteres invalido = Socio(dni=12345678, nombre='Juan Fernando Martin', apellido='Perez') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_apellido_menor_3(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre mayor a 15 caracteres invalido = Socio(dni=12345678, nombre='Juan', apellido='P') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_apellido_mayor_15(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre mayor a 15 caracteres invalido = Socio(dni=12345678, nombre='Juan', apellido='Perez Martinez Lopez') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_3(self): self.assertTrue(self.ns.regla_3()) def test_baja(self): idInv = 10 self.assertFalse(self.ns.baja(idInv)) idVal = 86 self.assertTrue(self.ns.baja(idVal)) def test_buscar(self): id = 10 self.assertIsNone(self.ns.buscar(id)) id = 86 self.assertIsNotNone(self.ns.buscar(id)) def test_buscar_dni(self): dni = 12345678 self.assertIsNotNone(self.ns.buscar_dni(dni)) dni = 12578945 self.assertIsNone(self.ns.buscar_dni(dni)) def test_todos(self): self.assertEqual(len(self.ns.todos()), 6) def test_modificacion(self): valido = Socio(id=76, dni=78562315, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.modificacion(valido)) invalido = Socio(id=76, dni=12345679, nombre='Juan', apellido='Perez Martinez Lopez') self.assertRaises(LongitudInvalida, self.ns.modificacion, invalido)
class TestsNegocio(unittest.TestCase): def setUp(self): super(TestsNegocio, self).setUp() self.ns = NegocioSocio() def tearDown(self): super(TestsNegocio, self).tearDown() self.ns.datos.borrar_todos() def test_alta(self): # pre-condiciones: no hay socios registrados self.assertEqual(len(self.ns.todos()), 3) # ejecuto la logica socio = Socio(dni=1234567, nombre='Juan', apellido='Perez') exito = self.ns.alta(socio) # post-condiciones: 1 socio registrado self.assertTrue(exito) self.assertEqual(len(self.ns.todos()), 4) def test_regla_1(self): #dni repetido repetido = Socio(dni=1234567, nombre='Juan', apellido='Perez') self.assertRaises(DniRepetido, self.ns.regla_1, repetido) #dni nuevo nuevo = Socio(dni=40115115, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_1(nuevo)) def test_regla_2_nombre_menor_3(self): # nombre mayor a 3 caracteres valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre menor a 3 caracteres invalido = Socio(dni=12345678, nombre='Ju', apellido='Perez') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_nombre_mayor_15(self): # nombre menor a 15 caracteres valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre mayor a 15 caracteres invalido = Socio(dni=12345678, nombre='Juan Jose Ignacio', apellido='Perez') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_apellido_menor_3(self): # apellido mayor a 3 caracteres valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # apellido menor a 3 caracteres invalido = Socio(dni=12345678, nombre='Juan', apellido='Pe') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_apellido_mayor_15(self): # apellido menor a 15 caracteres valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # apellido mayor a 15 caracteres invalido = Socio(dni=12345678, nombre='Juan', apellido='Perez Martinez Infante') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_3(self): self.assertTrue(self.ns.regla_3()) def test_baja(self): #no existe el id idInvalido = 10 self.assertFalse(self.ns.baja(idInvalido)) #el id existe idValido = 2 self.assertTrue(self.ns.baja(idValido)) def test_buscar(self): #no encuentra el id id = 10 self.assertIsNone(self.ns.buscar(id)) #encuentra el id id = 1 self.assertIsNotNone(self.ns.buscar(id)) def test_buscar_dni(self): #encuentra el dni dni = 1234567 self.assertIsNotNone(self.ns.buscar_dni(dni)) #no encuentra el dni dni = 4444444 self.assertIsNone(self.ns.buscar_dni(dni)) def test_todos(self): self.assertEqual(len(self.ns.todos()), 3) def test_modificacion(self): #modificacion ok valido = Socio(id=1, dni=123456, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.modificacion(valido)) #longitud nombre invalida invalido = Socio(id=1, dni=123456, nombre='Juan Jose Ignacio', apellido='Perez') self.assertRaises(LongitudInvalida, self.ns.modificacion, invalido)
text="Guardar", command=lambda: self.guardarMod()).grid(row=5, column=0, sticky=(E, W), padx=5, pady=5) Button(self.winMod, text="Cancelar", command=lambda: self.winMod.destroy()).grid(row=5, column=2, sticky=(E, W), padx=5) self.get_socios() def guardarMod(self): self.cns.modificacion( Socio(id=self.id.get(), nombre=self.nombre.get(), apellido=self.apellido.get(), dni=self.dni.get())) self.get_socios() self.winMod.destroy() if __name__ == '__main__': window = Tk() cns = NegocioSocio() cps = PresentacionSocios(window, cns) window.mainloop()
class Aplicacion(): def __init__(self): Base.metadata.bind = engine self.raiz = Tk() self.raiz.title("Gestion de Socios") self.tree = ttk.Treeview(self.raiz) #Variable self.CN = NegocioSocio() self.Dni = IntVar() self.Nombre = StringVar() self.Apellido = StringVar() #Columnas self.tree["columns"] = ("one", "two", "three") self.tree.column("#0", width=100) self.tree.column("one", width=100) self.tree.column("two", width=100) self.tree.column("three", width=100) self.tree.heading("#0", text="Id") self.tree.heading("one", text="Dni") self.tree.heading("two", text="Nombre") self.tree.heading("three", text="Apellido") #Insert self.boton0 = ttk.Button(self.raiz, text="Agregar", command=self.grilla) self.boton1 = ttk.Button(self.raiz, text="Eliminar", command=self.Baja) self.boton2 = ttk.Button(self.raiz, text="Modificar", command=self.grilla2) self.boton0.grid(row=1, column=5) self.boton1.grid(row=2, column=5) self.boton2.grid(row=3, column=5) lista = self.CN.todoss() for i in lista: self.tree.insert('', 'end', text=str(i.id), values=(i.dni, i.nombre, i.apellido), iid=i.id) self.CN.cerrar() #Loop self.tree.grid() self.raiz.mainloop() #Alta def Agrega(self): dni = self.Dni.get() nombre = self.Nombre.get() apellido = self.Apellido.get() print(dni, nombre, apellido) socio = Socio(dni=dni, nombre=nombre, apellido=apellido) print(socio) bandera = self.CN.alta(socio) print(bandera) if (bandera == True): usu = self.CN.buscar_dni(dni) self.tree.insert('', 'end', text=str(usu.id), values=(usu.dni, usu.nombre, usu.apellido), iid=usu.id) else: print("error") def grilla(self): self.ventana = Toplevel() self.ventana.title("Nuevo Socio") self.label0 = ttk.Label(self.ventana, text="Nombre: ") self.label1 = ttk.Label(self.ventana, text="Apellido:") self.label2 = ttk.Label(self.ventana, text="DNI:") self.entry0 = ttk.Entry(self.ventana, textvariable=self.Nombre, width=30) self.entry1 = ttk.Entry(self.ventana, textvariable=self.Apellido, width=30) self.entry2 = ttk.Entry(self.ventana, textvariable=self.Dni, width=30) self.boton0 = ttk.Button(self.ventana, text="Agregar", command=self.Agrega) self.label0.grid(row=0, column=0) self.label1.grid(row=1, column=0) self.label2.grid(row=2, column=0) self.entry0.grid(row=0, column=1) self.entry1.grid(row=1, column=1) self.entry2.grid(row=2, column=1) self.boton0.grid(row=3, column=2) #Baja def Baja(self): selected_item = self.tree.selection()[0] self.CN.baja(selected_item) self.tree.delete(selected_item) #Modificacion def Modificar(self): x = self.tree.selection()[0] print(x) for item in x: self.tree.item(item, values=(self.Nombre.get(), self.Apellido.get(), self.Dni.get())) idd = item dni = self.Dni.get() nombre = self.Nombre.get() apellido = self.Apellido.get() print(dni, nombre, apellido) socio = Socio(id=idd, dni=dni, nombre=nombre, apellido=apellido) print(socio) bandera = self.CN.modificacion(socio) print(bandera) def grilla2(self): self.ventana = Toplevel() self.ventana.title("Nuevo Socio") self.label0 = ttk.Label(self.ventana, text="Nombre: ") self.label1 = ttk.Label(self.ventana, text="Apellido:") self.label2 = ttk.Label(self.ventana, text="DNI:") self.entry0 = ttk.Entry(self.ventana, textvariable=self.Nombre, width=30) self.entry1 = ttk.Entry(self.ventana, textvariable=self.Apellido, width=30) self.entry2 = ttk.Entry(self.ventana, textvariable=self.Dni, width=30) self.boton0 = ttk.Button(self.ventana, text="Modificar", command=self.Modificar) self.label0.grid(row=0, column=0) self.label1.grid(row=1, column=0) self.label2.grid(row=2, column=0) self.entry0.grid(row=0, column=1) self.entry1.grid(row=1, column=1) self.entry2.grid(row=2, column=1) self.boton0.grid(row=3, column=2)
class TestsNegocio(unittest.TestCase): def setUp(self): super(TestsNegocio, self).setUp() self.ns = NegocioSocio() def tearDown(self): super(TestsNegocio, self).tearDown() self.ns.datos.borrar_todos() def test_alta(self): # pre-condiciones: no hay socios registrados self.assertEqual(len(self.ns.todos()), 0) # ejecuto la logica socio = Socio(dni=12345678, nombre='Juan', apellido='Perez') exito = self.ns.alta(socio) # post-condiciones: 1 socio registrado self.assertTrue(exito) self.assertEqual(len(self.ns.todos()), 1) def test_regla_1(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_1(valido)) # dni repetido invalido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertRaises(DniRepetido, self.ns.regla_1, invalido) def test_regla_2_nombre_menor_3(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre menor a 3 caracteres invalido = Socio(dni=12345678, nombre='J', apellido='Perez') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_nombre_mayor_15(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombremayor a 15 caracteres invalido = Socio(dni=12345678, nombre='Juuuuuuuuuuuuuuuuuuuaaaaaaaaannn', apellido='Perez') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_apellido_menor_3(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # apellido menor a 3 caracteres invalido = Socio(dni=12345678, nombre='Juan', apellido='P') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_apellido_mayor_15(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # apellido mayor a 15 caracteres invalido = Socio(dni=12345678, nombre='Juan', apellido='Peeeeeerrrrrreeeeeezzzzzzzzzzz') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_3(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.ns.alta(valido) self.assertTrue(self.ns.regla_3()) # Se añaden mas de 200 socios for y in range(0, 200): invalido = Socio(nombre='Juan', apellido='Perez') self.ns.alta(invalido) self.assertRaises(MaximoAlcanzado, self.ns.regla_3()) def test_baja(self): # valida baja valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.ns.alta(valido) self.assertTrue(self.ns.baja(valido.id_socio)) # Se borra un socio que no se ha cargado invalido = Socio(dni=12345789, nombre='Juan', apellido='Perez') self.ns.baja(invalido) self.assertFalse(self.ns.baja(invalido.id_socio)) def test_buscar(self): # valida busqueda valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.ns.alta(valido) self.assertTrue(self.ns.buscar(valido.id_socio)) # Se busca un socio que no se ha cargado invalido = Socio(dni=41028971, nombre='Bruno', apellido='Caracini') self.assertFalse(self.ns.buscar(invalido.id_socio)) def test_buscar_dni(self): # valida busqueda por dni valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.ns.alta(valido) self.assertTrue(self.ns.buscar_dni(valido.dni)) # Se busca por dni un socio que no se ha cargado invalido = Socio(dni=41028971, nombre='Bruno', apellido='Caracini') self.assertFalse(self.ns.buscar_dni(invalido.dni)) def test_todos(self): # valida devoucion de un arreglo de socios no vacio, cargando uno para asegurar la no nulidad de socios valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.ns.alta(valido) assert self.ns.todos() != None def test_modificacion(self): # valida modificacion de socio existente valido = valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.ns.alta(valido) valido_mod = Socio(dni=12345679, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.modificacion(valido_mod)) # Se modifica socio inexistente invalido = Socio(dni=41028971, nombre='Bruno Tomas', apellido='Caracini') self.assertFalse(self.ns.modificacion(invalido))
class TestsNegocio(unittest.TestCase): def setUp(self): super(TestsNegocio, self).setUp() self.ns = NegocioSocio() def tearDown(self): super(TestsNegocio, self).tearDown() self.ns.datos.borrar_todos() def test_alta(self): # pre-condiciones: no hay socios registrados self.assertEqual(len(self.ns.todos()), 0) # ejecuto la logica socio = Socio(dni=12345678, nombre='Juan', apellido='Perez') exito = self.ns.alta(socio) # post-condiciones: 1 socio registrado self.assertTrue(exito) self.assertEqual(len(self.ns.todos()), 1) #ESTE HICE def test_regla_1(self): valido = Socio(dni=1234567, nombre='Roberto', apellido='Suarez') invalido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_1(valido)) self.assertRaises(DniRepetido, self.ns.regla_1, invalido) def test_regla_2_nombre_menor_3(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre menor a 3 caracteres invalido = Socio(dni=12345678, nombre='J', apellido='Perez') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) #TODOS ESTOS HICE def test_regla_2_nombre_mayor_15(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre mayor a 15 caracteres invalido = Socio(dni=12345678, nombre='Juannnnnnnnnnnnn', apellido='Perez') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_apellido_menor_3(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre menor a 3 caracteres invalido = Socio(dni=12345678, nombre='Juan', apellido='P') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_2_apellido_mayor_15(self): # valida regla valido = Socio(dni=12345678, nombre='Juan', apellido='Perez') self.assertTrue(self.ns.regla_2(valido)) # nombre menor a 3 caracteres invalido = Socio(dni=12345678, nombre='Juan', apellido='Perezzzzzzzzzzzzzzzzzz') self.assertRaises(LongitudInvalida, self.ns.regla_2, invalido) def test_regla_3(self): invalido = self.ns.todos >= self.ns.MAX_SOCIOS self.assertRaises(MaximoAlcanzado, self.ns.regla_3, invalido) def test_baja(self): # pre-condiciones: no hay socios registrados self.assertEqual(len(self.ns.todos()), 0) # ejecuto la logica socio = Socio(dni=12345678, nombre='Juan', apellido='Perez') alta = self.ns.alta(socio) #Verifica alta self.assertTrue(alta) self.assertNotEqual(len(self.ns.todos()), 0) baja = self.ns.baja(socio) #Verifica baja self.assertTrue(baja) self.assertEqual(len(self.ns.todos()), 0) def test_buscar(self): # pre-condiciones: no hay socios registrados self.assertEqual(len(self.ns.todos()), 0) #Creamos un socio y lo validamos socio = Socio(dni=12345678, nombre='Juan', apellido='Perez') alta = self.ns.alta(socio) self.assertTrue(alta) self.assertNotEqual(len(self.ns.todos()), 0) #Buscamos ese socio busq = self.ns.test_buscar(socio) self.assertTrue(busq) def test_buscar_dni(self): # pre-condiciones: no hay socios registrados self.assertEqual(len(self.ns.todos()), 0) #Creamos un socio y lo validamos socio = Socio(dni=12345678, nombre='Juan', apellido='Perez') alta = self.ns.alta(socio) self.assertTrue(alta) self.assertNotEqual(len(self.ns.todos()), 0) #Buscamos ese socio busq = self.ns.test_buscar("12345678") self.assertTrue(busq) def test_todos(self): #Creamos un socio y lo validamos socio = Socio(dni=12345678, nombre='Juan', apellido='Perez') alta = self.ns.alta(socio) self.assertTrue(alta) #Validamos que todos no devuelva vacio self.assertNotEqual(len(self.ns.todos()), []) def test_modificacion(self): # pre-condiciones: no hay socios registrados self.assertEqual(len(self.ns.todos()), 0) # Alta socio = Socio(dni=12345678, nombre='Juan', apellido='Perez') alta = self.ns.alta(socio) #Verifica alta self.assertTrue(alta) self.assertNotEqual(len(self.ns.todos()), 0) socio.nombre = 'Roberto' socio.apellido = 'Suarez' socio.dni = 1234567 self.ns.modificacion(socio) socio_mod = self.ns.buscar(socio.id) #Verifica modificacion self.assertEqual(socio_mod.id, socio.id) self.assertEqual(socio_mod.nombre, 'Roberto') self.assertEqual(socio_mod.apellido, 'Suarez') self.assertEqual(socio_mod.dni, 13264587)