def test_adicionar_copia_a_um_filme(self):
     locadora = Locadora("Video Club Locadora")
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação","Fulano",("Artista A","Artista B"))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção","Mariazinha",("Artista C","Artista D"))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     copia1 = Copia(1.01,date(2010,12,28),"B")
     copia2 = Copia(1.02,date(2010,12,28),"R")        
     locadora.adicionar_copia_a_um_filme(1,copia1)
     locadora.adicionar_copia_a_um_filme(1,copia2)
     filme1.copias |should| equal_to ([copia1,copia2])
 def test_lista_todos_os_filmes_por_artista(self):
     locadora = Locadora("Video Club Locadora")
     diretor1 = Diretor("Ninguem","Brasil",date(1980,12,28))
     diretor2 = Diretor("Alguem","Brasil",date(1980,12,28))
     artista1 = Artista("Artista A","Brasil",date(1990,11,10))
     artista2 = Artista("Artista B","Brasil",date(1990,11,10))
     artista3 = Artista("Artista C","Brasil",date(1990,11,10))
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação",diretor1,(artista1,artista2))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção",diretor2,(artista2,artista3))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     locadora.lista_todos_os_filmes_por_artista() |should| equal_to([["Artista C",["Harry Pother"]],["Artista B",["Piratas do Caribe","Harry Pother"]],["Artista A",["Piratas do Caribe"]]])
 def test_busca_filme_por_genero_none(self):
     locadora = Locadora("Video Club Locadora")
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação","Fulano",("Artista A","Artista B"))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção","Mariazinha",("Artista C","Artista D"))
     filme3 = Filme(3,"X-man Primeira Classe","120","2011","Ficção","Pedrinho",("Artista E","Artista F"))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     locadora.adicionar_filme(filme3)
     locadora.busca_filme_por_genero("Policial") |should| equal_to(None)
 def test_busca_filme_por_diretor_none(self):
     locadora = Locadora("Video Club Locadora")
     diretor1 = Diretor("Ninguem","Brasil",date(1980,12,28))
     diretor2 = Diretor("Alguem","Brasil",date(1980,12,28))
     diretor3 = Diretor("Pedrinho","Brasil",date(1980,12,28))
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação",diretor1,("Artista A","Artista B"))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção",diretor2,("Artista C","Artista D"))
     filme3 = Filme(3,"X-man Primeira Classe","120","2011","Ficção",diretor3,("Artista E","Artista F"))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     locadora.adicionar_filme(filme3)
     locadora.busca_filme_por_diretor("Mariazinha") |should| equal_to(None)
 def test_lista_todos_os_filmes_e_quantidade_de_copia(self):
     locadora = Locadora("Video Club Locadora")
     diretor1 = Diretor("Ninguem","Brasil",date(1980,12,28))
     diretor2 = Diretor("Alguem","Brasil",date(1980,12,28))
     diretor3 = Diretor("Pedrinho","Brasil",date(1980,12,28))
     artista1 = Artista("Artista A","Brasil",date(1990,11,10))
     artista2 = Artista("Artista B","Brasil",date(1990,11,10))
     artista3 = Artista("Artista C","Brasil",date(1990,11,10))
     artista4 = Artista("Artista D","Brasil",date(1990,11,10))
     artista5 = Artista("Artista E","Brasil",date(1990,11,10))
     artista6 = Artista("Artista F","Brasil",date(1990,11,10))
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação",diretor1,(artista1,artista2))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção",diretor2,(artista3,artista4))
     filme3 = Filme(3,"X-man Primeira Classe","120","2011","Ficção",diretor3,(artista5,artista6))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     locadora.adicionar_filme(filme3)
     copia1 = Copia(1.01,date(2010,12,28),"B")
     copia2 = Copia(1.02,date(2010,12,28),"R")        
     locadora.adicionar_copia_a_um_filme(1,copia1)
     locadora.adicionar_copia_a_um_filme(1,copia2)
     locadora.lista_todos_os_filmes_e_quantidade_de_copia() |should| equal_to([("Piratas do Caribe",2),("Harry Pother",0),("X-man Primeira Classe",0)])
 def test_busca_filme_por_artistas_encontrando_2_artistas(self):
     locadora = Locadora("Video Club Locadora")
     diretor1 = Diretor("Ninguem","Brasil",date(1980,12,28))
     diretor2 = Diretor("Alguem","Brasil",date(1980,12,28))
     diretor3 = Diretor("Pedrinho","Brasil",date(1980,12,28))
     artista1 = Artista("Artista A","Brasil",date(1990,11,10))
     artista2 = Artista("Artista B","Brasil",date(1990,11,10))
     artista3 = Artista("Artista C","Brasil",date(1990,11,10))
     artista4 = Artista("Artista D","Brasil",date(1990,11,10))
     artista5 = Artista("Artista E","Brasil",date(1990,11,10))
     artista6 = Artista("Artista F","Brasil",date(1990,11,10))
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação",diretor1,(artista1,artista2))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção",diretor2,(artista3,artista4))
     filme3 = Filme(3,"X-man Primeira Classe","120","2011","Ficção",diretor3,(artista5,artista6))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     locadora.adicionar_filme(filme3)
     locadora.busca_filme_por_artistas("Artista A","Artista F") |should| equal_to([filme1,filme3])
 def test_lista_todos_os_filmes_por_genero(self):
     locadora = Locadora("Video Club Locadora")
     diretor1 = Diretor("Ninguem","Brasil",date(1980,12,28))
     diretor2 = Diretor("Alguem","Brasil",date(1980,12,28))
     diretor3 = Diretor("Pedrinho","Brasil",date(1980,12,28))
     artista1 = Artista("Artista A","Brasil",date(1990,11,10))
     artista2 = Artista("Artista B","Brasil",date(1990,11,10))
     artista3 = Artista("Artista C","Brasil",date(1990,11,10))
     artista4 = Artista("Artista D","Brasil",date(1990,11,10))
     artista5 = Artista("Artista E","Brasil",date(1990,11,10))
     artista6 = Artista("Artista F","Brasil",date(1990,11,10))
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação",diretor1,(artista1,artista2))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção",diretor2,(artista3,artista4))
     filme3 = Filme(3,"X-man Primeira Classe","120","2011","Ficção",diretor3,(artista5,artista6))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     locadora.adicionar_filme(filme3)
     locadora.lista_todos_os_filmes_por_genero() |should| equal_to([["Ficção",["Harry Pother","X-man Primeira Classe"]],["Ação",["Piratas do Caribe"]]])
 def test_lista_de_socios_inadimplentes_com_reultado_none(self):
     locadora = Locadora("Video Club Locadora")
     diretor1 = Diretor("Ninguem","Brasil",date(1980,12,28))
     diretor2 = Diretor("Alguem","Brasil",date(1980,12,28))
     diretor3 = Diretor("Pedrinho","Brasil",date(1980,12,28))
     artista1 = Artista("Artista A","Brasil",date(1990,11,10))
     artista2 = Artista("Artista B","Brasil",date(1990,11,10))
     artista3 = Artista("Artista C","Brasil",date(1990,11,10))
     artista4 = Artista("Artista D","Brasil",date(1990,11,10))
     artista5 = Artista("Artista E","Brasil",date(1990,11,10))
     artista6 = Artista("Artista F","Brasil",date(1990,11,10))
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação",diretor1,(artista1,artista2))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção",diretor2,(artista3,artista4))
     filme3 = Filme(3,"X-man Primeira Classe","120","2011","Ficção",diretor3,(artista5,artista6))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     locadora.adicionar_filme(filme3)
     copia1 = Copia("1.01",date(2010,12,28),"B")
     copia2 = Copia("1.02",date(2010,12,28),"B")
     copia3 = Copia("1.03",date(2010,12,28),"R")
     copia4 = Copia("1.04",date(2010,12,28),"R")
     copia5 = Copia("1.05",date(2010,12,28),"R")
     copia6 = Copia("2.01",date(2010,12,28),"B")
     copia7 = Copia("2.02",date(2010,12,28),"R")
     copia8 = Copia("2.03",date(2010,12,28),"R")
     locadora.adicionar_copia_a_um_filme(1,copia1)
     locadora.adicionar_copia_a_um_filme(1,copia2)
     locadora.adicionar_copia_a_um_filme(1,copia3)
     locadora.adicionar_copia_a_um_filme(1,copia4)
     locadora.adicionar_copia_a_um_filme(1,copia5)
     locadora.adicionar_copia_a_um_filme(2,copia6)
     locadora.adicionar_copia_a_um_filme(2,copia7)
     locadora.adicionar_copia_a_um_filme(2,copia8)
     socio1 = Socio("0001","Leandro Sousa Azevedo","Rua A. C. de Assis, 48","99517332")
     socio2 = Socio("0002","Joao","Rua A. C. de Assis, 48","99517332")
     socio3 = Socio("0003","Marcos","Rua A. C. de Assis, 48","99517332")
     locadora.adicionar_socio(socio1)
     locadora.adicionar_socio(socio2)
     locadora.adicionar_socio(socio3)
     aluguel1 = Aluguel("00000001","0001",date(2011,06,23),["1.01","2.01"])
     aluguel2 = Aluguel("00000002","0002",date(2011,06,23),["1.02","2.02","2.03"])
     aluguel3 = Aluguel("00000003","0003",date(2011,06,25),["1.03"])
     locadora.realizar_locacao(aluguel1)
     locadora.realizar_locacao(aluguel2)
     locadora.realizar_locacao(aluguel3)
     locadora.emprestimos |should| equal_to([aluguel1,aluguel2,aluguel3])
     locadora.lista_de_socios_inadimplentes(date(2011,06,26)) |should| equal_to (None)
 def test_realizar_devolucao_com_multa(self):#valor padrão do aluguel R$ 3,00 por DVD, + 10% por dia de atraso
     locadora = Locadora("Video Club Locadora")
     diretor1 = Diretor("Ninguem","Brasil",date(1980,12,28))
     diretor2 = Diretor("Alguem","Brasil",date(1980,12,28))
     diretor3 = Diretor("Pedrinho","Brasil",date(1980,12,28))
     artista1 = Artista("Artista A","Brasil",date(1990,11,10))
     artista2 = Artista("Artista B","Brasil",date(1990,11,10))
     artista3 = Artista("Artista C","Brasil",date(1990,11,10))
     artista4 = Artista("Artista D","Brasil",date(1990,11,10))
     artista5 = Artista("Artista E","Brasil",date(1990,11,10))
     artista6 = Artista("Artista F","Brasil",date(1990,11,10))
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação",diretor1,(artista1,artista2))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção",diretor2,(artista3,artista4))
     filme3 = Filme(3,"X-man Primeira Classe","120","2011","Ficção",diretor3,(artista5,artista6))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     locadora.adicionar_filme(filme3)
     copia1 = Copia("1.01",date(2010,12,28),"B")
     copia2 = Copia("1.02",date(2010,12,28),"B")
     copia3 = Copia("1.03",date(2010,12,28),"R")
     copia4 = Copia("1.04",date(2010,12,28),"R")
     copia5 = Copia("1.05",date(2010,12,28),"R")
     copia6 = Copia("2.01",date(2010,12,28),"B")
     copia7 = Copia("2.02",date(2010,12,28),"R")
     copia8 = Copia("2.03",date(2010,12,28),"R")
     locadora.adicionar_copia_a_um_filme(1,copia1)
     locadora.adicionar_copia_a_um_filme(1,copia2)
     locadora.adicionar_copia_a_um_filme(1,copia3)
     locadora.adicionar_copia_a_um_filme(1,copia4)
     locadora.adicionar_copia_a_um_filme(1,copia5)
     locadora.adicionar_copia_a_um_filme(2,copia6)
     locadora.adicionar_copia_a_um_filme(2,copia7)
     locadora.adicionar_copia_a_um_filme(2,copia8)
     socio1 = Socio("0001","Leandro Sousa Azevedo","Rua A. C. de Assis, 48","99517332")
     socio2 = Socio("0002","Joao","Rua A. C. de Assis, 48","99517332")
     socio3 = Socio("0003","Marcos","Rua A. C. de Assis, 48","99517332")
     locadora.adicionar_socio(socio1)
     locadora.adicionar_socio(socio2)
     locadora.adicionar_socio(socio3)
     aluguel1 = Aluguel("00000001","0001",date(2011,06,23),["1.01","2.01"])
     aluguel2 = Aluguel("00000002","0002",date(2011,06,23),["1.02","2.02","2.03"])
     locadora.realizar_locacao(aluguel1)
     locadora.realizar_locacao(aluguel2)
     locadora.emprestimos |should| equal_to([aluguel1,aluguel2])
     locadora.realizar_devolucao("00000001",28,06,2011) |should| equal_to("6.9")
     copia1.esta_alugado |should| equal_to (False)#aqui ele apenas prova que esta funcionando a devolução
     copia6.esta_alugado |should| equal_to (False)#aqui ele apenas prova que esta funcionando a devolução
     aluguel1.valor_pago |should| equal_to("6.9")
     aluguel1.data_devolucao |should| equal_to(date(2011,06,28))
 def test_calcula_valor_pagamento_com_multa(self):
     locadora = Locadora("Video Club Locadora")
     locadora.calcula_valor_pagamento(date(2011,06,23),date(2011,06,28),3) |should| equal_to("9.9")
 def test_adicionar_socio(self):
     locadora = Locadora("Video Club Locadora")
     socio = Socio(0001,"Leandro Sousa Azevedo","Rua A. C. de Assis, 48","99517332")
     locadora.adicionar_socio(socio)
     locadora.socios |should| equal_to([socio])
 def test_lista_de_copias_em_mal_estado(self):
     locadora = Locadora("Video Club Locadora")
     diretor1 = Diretor("Ninguem","Brasil",date(1980,12,28))
     diretor2 = Diretor("Alguem","Brasil",date(1980,12,28))
     diretor3 = Diretor("Pedrinho","Brasil",date(1980,12,28))
     artista1 = Artista("Artista A","Brasil",date(1990,11,10))
     artista2 = Artista("Artista B","Brasil",date(1990,11,10))
     artista3 = Artista("Artista C","Brasil",date(1990,11,10))
     artista4 = Artista("Artista D","Brasil",date(1990,11,10))
     artista5 = Artista("Artista E","Brasil",date(1990,11,10))
     artista6 = Artista("Artista F","Brasil",date(1990,11,10))
     filme1 = Filme(1,"Piratas do Caribe","120","2010","Ação",diretor1,(artista1,artista2))
     filme2 = Filme(2,"Harry Pother","120","2011","Ficção",diretor2,(artista3,artista4))
     filme3 = Filme(3,"X-man Primeira Classe","120","2011","Ficção",diretor3,(artista5,artista6))
     locadora.adicionar_filme(filme1)
     locadora.adicionar_filme(filme2)
     locadora.adicionar_filme(filme3)
     copia1 = Copia(1.01,date(2010,12,28),"B")
     copia2 = Copia(1.02,date(2010,12,28),"B")
     copia3 = Copia(1.03,date(2010,12,28),"R")
     copia4 = Copia(1.04,date(2010,12,28),"R")
     copia5 = Copia(1.05,date(2010,12,28),"R")
     copia6 = Copia(2.01,date(2010,12,28),"B")
     copia7 = Copia(2.02,date(2010,12,28),"R")
     copia8 = Copia(2.03,date(2010,12,28),"R")
     locadora.adicionar_copia_a_um_filme(1,copia1)
     locadora.adicionar_copia_a_um_filme(1,copia2)
     locadora.adicionar_copia_a_um_filme(1,copia3)
     locadora.adicionar_copia_a_um_filme(1,copia4)
     locadora.adicionar_copia_a_um_filme(1,copia5)
     locadora.adicionar_copia_a_um_filme(2,copia6)
     locadora.adicionar_copia_a_um_filme(2,copia7)
     locadora.adicionar_copia_a_um_filme(2,copia8)
     locadora.lista_de_copias_em_mal_estado() |should| equal_to([["Piratas do Caribe",["1.03","1.04","1.05"]],["Harry Pother",["2.02","2.03"]]])
 def test_adicionar_filme(self):
     locadora = Locadora("Video Club Locadora")
     locadora.adicionar_filme("FILME A")
     locadora.adicionar_filme("FILME B")
     locadora.filmes |should| equal_to(['FILME A','FILME B'])