def teste_alguem_de_fora_escreve_com_alguem_de_dentro(self): livros = [ ['A', 'B'], ['B', 'C'], ['C', 'D'], ['Berrondo', 'Flávio'], ['Erdos', 'Berrondo'], ] coautoresDeErdos = CoautoresDeErdos(livros) self.assertEqual(coautoresDeErdos['Erdos'].numero_de_erdos, 0) self.assertEqual(coautoresDeErdos['Berrondo'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['Flávio'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['A'].numero_de_erdos, INFINITO) self.assertEqual(coautoresDeErdos['B'].numero_de_erdos, INFINITO) self.assertEqual(coautoresDeErdos['C'].numero_de_erdos, INFINITO) self.assertEqual(coautoresDeErdos['D'].numero_de_erdos, INFINITO) novos_livros = [['B', 'Flávio']] coautoresDeErdos.incluir_autores_de(novos_livros) self.assertEqual(coautoresDeErdos['Erdos'].numero_de_erdos, 0) self.assertEqual(coautoresDeErdos['Berrondo'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['Flávio'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['A'].numero_de_erdos, 4) self.assertEqual(coautoresDeErdos['B'].numero_de_erdos, 3) self.assertEqual(coautoresDeErdos['C'].numero_de_erdos, 4) self.assertEqual(coautoresDeErdos['D'].numero_de_erdos, 5)
def test(self): livros = [ ['Erdos', 'Silva'], ['Erdos', 'Santos'], ['Silva', 'Souza'], ['Caminha'], ['Santos', 'Souto'], ['Silva', 'Vaz'], ['Santos', 'Pereira'], ['Vaz', 'Caminha'], ['Silva', 'Caminha'], ['Coutinho', 'Malta', 'Guedes', 'Salviano'], ] coautoresDeErdos = CoautoresDeErdos(livros) self.assertEqual(0, coautoresDeErdos['Erdos'].numero_de_erdos) self.assertEqual(1, coautoresDeErdos['Silva'].numero_de_erdos) self.assertEqual(1, coautoresDeErdos['Santos'].numero_de_erdos) self.assertEqual(2, coautoresDeErdos['Souto'].numero_de_erdos) self.assertEqual(2, coautoresDeErdos['Caminha'].numero_de_erdos) self.assertEqual(2, coautoresDeErdos['Souza'].numero_de_erdos) self.assertEqual(2, coautoresDeErdos['Vaz'].numero_de_erdos) self.assertEqual(2, coautoresDeErdos['Pereira'].numero_de_erdos) self.assertEqual(INFINITO, coautoresDeErdos['Coutinho'].numero_de_erdos) self.assertEqual(INFINITO, coautoresDeErdos['Malta'].numero_de_erdos) self.assertEqual(INFINITO, coautoresDeErdos['Guedes'].numero_de_erdos) self.assertEqual(INFINITO, coautoresDeErdos['Salviano'].numero_de_erdos) coautoresDeErdos.incluir_autores_de([['Souto', 'Guedes']]) self.assertEqual(2, coautoresDeErdos['Souto'].numero_de_erdos) self.assertEqual(3, coautoresDeErdos['Guedes'].numero_de_erdos)
def teste_boladao(self): livros = [ ['Erdos', '1'], ['1', '2'], ['2', '3'], ['3', '4'], ['4', '5'], ['5', '6'], ['6', '7'], ['7', '8'], ] coautoresDeErdos = CoautoresDeErdos(livros) self.assertEqual(coautoresDeErdos['Erdos'].numero_de_erdos, 0) self.assertEqual(coautoresDeErdos['1'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['2'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['3'].numero_de_erdos, 3) self.assertEqual(coautoresDeErdos['4'].numero_de_erdos, 4) self.assertEqual(coautoresDeErdos['5'].numero_de_erdos, 5) self.assertEqual(coautoresDeErdos['6'].numero_de_erdos, 6) self.assertEqual(coautoresDeErdos['7'].numero_de_erdos, 7) self.assertEqual(coautoresDeErdos['8'].numero_de_erdos, 8) novos_livros = [['2', '5']] coautoresDeErdos.incluir_autores_de(novos_livros) self.assertEqual(coautoresDeErdos['Erdos'].numero_de_erdos, 0) self.assertEqual(coautoresDeErdos['1'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['2'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['3'].numero_de_erdos, 3) self.assertEqual(coautoresDeErdos['4'].numero_de_erdos, 4) self.assertEqual(coautoresDeErdos['5'].numero_de_erdos, 3) self.assertEqual(coautoresDeErdos['6'].numero_de_erdos, 4) self.assertEqual(coautoresDeErdos['7'].numero_de_erdos, 5) self.assertEqual(coautoresDeErdos['8'].numero_de_erdos, 6) novissimos_livros = [['Erdos', '4']] coautoresDeErdos.incluir_autores_de(novissimos_livros) self.assertEqual(coautoresDeErdos['Erdos'].numero_de_erdos, 0) self.assertEqual(coautoresDeErdos['1'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['2'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['3'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['4'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['5'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['6'].numero_de_erdos, 3) self.assertEqual(coautoresDeErdos['7'].numero_de_erdos, 4) self.assertEqual(coautoresDeErdos['8'].numero_de_erdos, 5) livros_mais_novos_ainda = [['3', '5', '8']] coautoresDeErdos.incluir_autores_de(livros_mais_novos_ainda) self.assertEqual(coautoresDeErdos['Erdos'].numero_de_erdos, 0) self.assertEqual(coautoresDeErdos['1'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['2'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['3'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['4'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['5'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['6'].numero_de_erdos, 3) self.assertEqual(coautoresDeErdos['7'].numero_de_erdos, 4) self.assertEqual(coautoresDeErdos['8'].numero_de_erdos, 3)
def teste_promocao_intermediaria(self): livros = [ ['Erdos', 'Berrondo'], ['Berrondo', 'Flávio'], ['Flávio', 'Magdalena'], ['Magdalena', 'Luiza'], ] coautoresDeErdos = CoautoresDeErdos(livros) self.assertEqual(coautoresDeErdos['Erdos'].numero_de_erdos, 0) self.assertEqual(coautoresDeErdos['Berrondo'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['Flávio'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['Magdalena'].numero_de_erdos, 3) self.assertEqual(coautoresDeErdos['Luiza'].numero_de_erdos, 4) novos_livros = [['Erdos', 'Luiza']] coautoresDeErdos.incluir_autores_de(novos_livros) self.assertEqual(coautoresDeErdos['Erdos'].numero_de_erdos, 0) self.assertEqual(coautoresDeErdos['Berrondo'].numero_de_erdos, 1) self.assertEqual(coautoresDeErdos['Flávio'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['Magdalena'].numero_de_erdos, 2) self.assertEqual(coautoresDeErdos['Luiza'].numero_de_erdos, 1)