コード例 #1
0
from unittest import TestCase
from User import User
from Viatge import Viatge

steverogers = User("Steve Grant Rogers", "471", "Brooklyn", "*****@*****.**",
                   "983")
tipus_targeta1 = "VISA"
tipus_targeta2 = "MasterCard"
num_targeta = 123456
codi_seguretat = 13062091

v1 = Viatge(steverogers, 4, ["Paris", "Roma"])
v2 = Viatge(steverogers, 10, ["Moscu"])
v3 = Viatge(steverogers, 2, ["Tokyo"])


#Controla que, quan es paga el viatge, es reporta que l'acció s'ha dut a terme correctament
class Test_Viatge_Pagament_Reserva(TestCase):
    def test_pagament(self):
        assert v1.pagar(tipus_targeta1, num_targeta, codi_seguretat) == True
        assert v2.pagar(tipus_targeta2, num_targeta, codi_seguretat) == True
        assert v3.pagar(tipus_targeta2, num_targeta, codi_seguretat) == True
コード例 #2
0
from unittest import mock
from User import User
from Viatge import Viatge
from unittest import TestCase

u1 = User("Jofre Gomez Gonzalez", "123456789", "Algo", "*****@*****.**",
          "933123456")
tipus_targeta = ["VISA", "IOs", "Microsoft"]
num_targeta = [12345, 54321.62, "XXXXX"]
codi_seguretat = [78365, 53420987.67, "FF"]

v1 = Viatge(u1, 10, ["Barcelona", "Paris"])
v2 = Viatge(u1, 1, ["Madrid"])
v3 = Viatge(u1, 1, ["Barcelona", "Paris"])


class Test_Reintentar_PagamentViatge(TestCase):
    @mock.patch('Bank.Bank.do_payment')
    def test_Reintentar_PagamentViatge(self, mock_bank):

        #Abans de res, mencionar que si el pagament retorna false, qui s'encargara demostrar el missatge per
        #pantalla del error i on esta el error sera la interficie

        #Dades pagament valides + numero viatgers > 1 + numero destins > 1 + return funcio pagar de la classe Bank = True
        self.assertTrue(
            v1.pagar(tipus_targeta[0], num_targeta[0], codi_seguretat[0]))
        #Dades pagament valides + numero viatgers = 1 + numero destins = 1 + return funcio pagar de la classe Bank = True
        self.assertTrue(
            v2.pagar(tipus_targeta[0], num_targeta[0], codi_seguretat[0]))
        # Dades pagament valides + numero viatgers = 1 + numero destins > 1 + return funcio pagar de la classe Bank = True
        self.assertTrue(
コード例 #3
0
from unittest import TestCase
from Viatge import Viatge
from User import User
steverogers = User("Steve Grant Rogers", "471", "Brooklyn", "*****@*****.**",
                   "983")

v1 = Viatge(steverogers, 4, [])
v2 = Viatge(steverogers, 10, [])
v3 = Viatge(steverogers, 2, [])


class Test_Viatge_Inicialitzacio(TestCase):
    #Controla que el número de viatgers sigui l'esperat al inicialitzar l'objecte
    def test_num_viatgers(self):
        assert v1.num_viatgers == 4
        assert v2.num_viatgers == 10
        assert v3.num_viatgers == 2

    #Controla que la llista de destins está buida si el viatge no té destins
    def test_destins(self):
        assert v1.destins == []
        assert v2.destins == []
        assert v3.destins == []

    #Controla que la llista de vols estigui buida si el viatge no té destins
    def test_vols(self):
        assert v1.vols == []
        assert v2.vols == []
        assert v3.vols == []

    #Controla que el preu del viatge sigui 0 si el viatge no té destins
コード例 #4
0
from unittest import TestCase
from Viatge import Viatge
from User import User
steverogers=User("Steve Grant Rogers", "471","Brooklyn","*****@*****.**","983")


v1=Viatge(steverogers,4,["Paris", "Roma"])
v2=Viatge(steverogers,10,["Moscu"])
v3=Viatge(steverogers,2,["Tokyo"])
v1.treure_desti("Roma")
v2.treure_desti("Moscu")
v3.treure_desti("Tokyo")

class Test_Viatge_Treure_Destins(TestCase):
    #Controla que, quan es treuen destins, la llista de destins sigui la corresponent
    def test_treure_destins_destins(self):
        assert v1.destins==['Paris']
        assert v2.destins==[]
        assert v3.destins==[]

    #Controla que, quan es treuen destins, la llista de vols es la esperada
    def test_treure_destins_vols(self):
        assert v2.vols==[]
        assert v3.vols==[]
        assert len(v1.vols)==1
        assert v1.vols[0].destinacio=="Paris"

    #Controla que, quan es treuen destins, el preu sigui el corresponent
    def test_treure_destins_preu(self):
        assert v1.preu==140*v1.num_viatgers
        assert v2.preu==0
コード例 #5
0
from unittest import TestCase
from Viatge import Viatge
from User import User
steverogers = User("Steve Grant Rogers", "471", "Brooklyn", "*****@*****.**",
                   "983")

v1 = Viatge(steverogers, 4, [])
v2 = Viatge(steverogers, 10, [])
v3 = Viatge(steverogers, 2, [])
v1.afegir_desti("Paris")
v2.afegir_desti("Moscu")
v3.afegir_desti("Tokyo")


#Si se pasan los tests uno por uno, el resultado es bueno
#Si los se ponen todos a la vez, falla y no sabemos porqué
class Test_Viatge_Afegir_Destins(TestCase):
    #Controla que, al afegir destins, la llista de destins sigui la corresponent
    def test_afegir_destins_destins(self):
        assert v1.destins == ['Paris']
        assert v2.destins == ['Moscu']
        assert v3.destins == ['Tokyo']
        v1.afegir_desti("Roma")
        assert v1.destins == ['Paris', 'Roma']

    #Controla que, al afegir destins, la llista de vols sigui la corresponent
    def test_afegir_destins_vols(self):
        assert v1.vols[0].destinacio == "Paris"
        assert v2.vols[0].destinacio == "Moscu"
        assert v3.vols[0].destinacio == "Tokyo"
        v1.afegir_desti("Roma")
コード例 #6
0
import unittest
from unittest import mock
import User as us
from Viatge import Viatge

u = us.User("Cliente De Ejemplo", "420", "City", "*****@*****.**", "2343")
tipus_targeta = ["VISA", "InvaCard", "MasterCard"]
num_targeta = [24352, 234254, 2456342, 975674]
codi_seguretat = [23142, "34", 324342, 1324]

v1 = Viatge(u, 2, ["Palma", "Reus", "New York", "Dublín"])
v2 = Viatge(u, 6, ["Madrid", "BCN"])
v3 = Viatge(u, 3, ["Madrid", "Palma"])

print(v1.pagar(tipus_targeta[0], num_targeta[0], codi_seguretat[0]))  #bbb
print(v2.pagar(tipus_targeta[1], num_targeta[2], codi_seguretat[3]))  #bmb
print(v3.pagar(tipus_targeta[2], num_targeta[3], codi_seguretat[1]))  #bmb


class test_Reintentar_PagamentCoche(unittest.TestCase):
    @mock.patch('Rentalcars.Rentalcars.confirm_reserve')
    def test_Reintentar_PagamentC(self, mock_Rentalcars):

        self.assertTrue(v1.confirma_reserva_coche())
        self.assertFalse(v2.confirma_reserva_coche())
        self.assertFalse(v3.confirma_reserva_coche())

        mock_Rentalcars.return_value = False

        self.assertFalse(v1.confirma_reserva_coche())
        self.assertFalse(v2.confirma_reserva_coche())
コード例 #7
0
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import unittest
from unittest import TestCase
from unittest import mock
from User import User
from Viatge import Viatge

steverogers = User("Steve Grant Rogers", "471", "Brooklyn", "*****@*****.**",
                   "983")
tipus_targeta = ["VISA", "PacoCard", "MasterCard"]
num_targeta = [24352, 234254, 2456342, 975674]
codi_seguretat = [22452, 78365, 523467, 975674, 789080]

v1 = Viatge(steverogers, 4,
            ["Paris", "Roma", "New York", "Buenos Aires", "Rio de Janeiro"])
v2 = Viatge(steverogers, 10, ["Moscu", "Atenas", "Milan", "Londres"])
v3 = Viatge(steverogers, 2, ["Tokyo"])
v4 = Viatge(steverogers, 4, ["Paris", "Roma", "New York", "Buenos Aires"])
v5 = Viatge(steverogers, 2, ["Paris", "Milan", "Roma"])
v6 = Viatge(steverogers, 1, ["Roma"])

v1.pagar(tipus_targeta[0], num_targeta[0], codi_seguretat[0])
v2.pagar(tipus_targeta[2], num_targeta[1], codi_seguretat[4])
v4.pagar(tipus_targeta[0], num_targeta[3], codi_seguretat[2])
v5.pagar(tipus_targeta[1], num_targeta[1], codi_seguretat[4])
v6.pagar(tipus_targeta[2], num_targeta[1], codi_seguretat[4])


class test_Reintentar_PagamentViatge(unittest.TestCase):
コード例 #8
0
from unittest import TestCase
from User import User
from Viatge import Viatge

steverogers=User("Steve Grant Rogers", "471","Brooklyn","*****@*****.**","983")
tipus_targeta=["VISA","VISA","MasterCard"]
num_targeta=[12345,54321,2456342]
codi_seguretat=[78365,53420987,23452325]

v1=Viatge(steverogers,4,["Paris", "Roma","New York", "Buenos Aires", "Rio de Janeiro"])
v2=Viatge(steverogers,10,["Moscu","Atenas","Milan","Londres"])
v3=Viatge(steverogers,2,["Tokyo"])
v4=Viatge(steverogers,4,["Paris", "Roma","New York", "Buenos Aires"])

v1.pagar("VISA",24352,22452)
v2.pagar("MasterCard",234254,789080)
v4.pagar("VISA", 975674,523467)
#Per confirmar la reserva cal que el numero de destins sigui <=4 i
#hagis pagat el viatge amb anterioritat

#Controla que, quan hi ha un error a la reserva de vols, es reporti de l'acció
class Test_Error_Reserva(TestCase):
    def test_error_reserva(self):
        assert v1.confirma_reserva()==False
        assert v2.confirma_reserva()==True
        assert v3.confirma_reserva()==False
        assert v4.confirma_reserva()==True
コード例 #9
0
from unittest import TestCase
from User import User
from Viatge import Viatge

steverogers=User("Steve Grant Rogers", "471","Brooklyn","*****@*****.**","983")


v1=Viatge(steverogers,4,["Paris", "Roma"])
v2=Viatge(steverogers,10,["Moscu"])
v3=Viatge(steverogers,2,["Tokyo"])
v1.pagar("VISA",23542345,456234)
v2.pagar("MasterCard",5677,2534)
v3.pagar("VISA",5463987,9787)
#Per confirmar reserva, cal pagar el viatge primer
#Controla que, quan es confirma la reserva de vols, es reporti la confirmacio
class Test_Viatge_Confirmar_Reserva(TestCase):
    def test_reserva(self):
        assert v1.confirma_reserva()==True
        assert v2.confirma_reserva()==True
        assert v3.confirma_reserva()==True