Ejemplo n.º 1
0
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)
Ejemplo n.º 2
0
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)
Ejemplo n.º 3
0
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))