Coverage for TestesUnitarios.py: 100%
145 statements
« prev ^ index » next coverage.py v7.1.0, created at 2023-02-02 11:17 -0300
« prev ^ index » next coverage.py v7.1.0, created at 2023-02-02 11:17 -0300
1import unittest
2import pandas as pd
3import os
4from pandas.testing import assert_frame_equal
5from preencherLotacaoSalas import preencherLotacaoPredio
6from calcularPercentuais import calcularPercentuais
7from separarSalasCompostasEHorarios import *
8from carregarDados import *
10class TesteColetaSigaa(unittest.TestCase):
12 def testeCalcularPercentuais(self):
13 # teste da funcao que calcula os percentuais de ocupacao das salas e preenche a informacao no dataframe
15 dfExemploEntrada = pd.DataFrame()
16 dfExemploEntrada = pd.DataFrame(columns=['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor', 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local', 'salaSeparada', 'predio','lotacao', 'horarioSeparado', 'percDisciplina', 'percOcupacaoReal','percOcupacaoTotal'])
17 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', 'UAC', 130, '4T2 - Quarta 14h', 0, 0, 0]
18 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', 'UAC', 130, '4T3 - Quarta 15h', 0, 0, 0]
19 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', 'UAC', 60, '6T2 - Sexta 14h', 0, 0, 0]
20 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', 'UAC', 60, '6T3 - Sexta 15h', 0, 0, 0]
22 dfExemploSaida = pd.DataFrame()
23 dfExemploSaida = pd.DataFrame(columns=['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor', 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local', 'salaSeparada', 'predio','lotacao', 'horarioSeparado', 'percDisciplina', 'percOcupacaoReal','percOcupacaoTotal'])
24 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', 'UAC', 130, '4T2 - Quarta 14h', 98.82352941176471, 64.61538461538461, 65.38461538461539]
25 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', 'UAC', 130, '4T3 - Quarta 15h', 98.82352941176471, 64.61538461538461, 65.38461538461539]
26 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', 'UAC', 60, '6T2 - Sexta 14h', 98.82352941176471, 140.0, 141.66666666666669]
27 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', 'UAC', 60, '6T3 - Sexta 15h', 98.82352941176471, 140.0, 141.66666666666669]
29 dfTesteResultado = calcularPercentuais(dfExemploEntrada)
31 dfTesteResultado.to_csv('./testesUnitarios/csvTeste03Percentuais.csv', encoding="utf-8", sep=';', index = False)
32 dfTesteResultado = pd.read_csv('./testesUnitarios/csvTeste03Percentuais.csv', encoding="utf-8", sep=';')
34 self.assertIsNone(assert_frame_equal(dfTesteResultado, dfExemploSaida))
35 # fim do metodo testeCalcularPercentuais
37 def testePreencherLotacaoPredio(self):
38 # teste da funcao que preenche a lotacao das salas e o nome do predio ao qual ela pertence
40 dfExemploEntrada = pd.DataFrame()
41 dfExemploEntrada = pd.DataFrame(columns=['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor', 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local', 'salaSeparada', 'predio','lotacao', 'horarioSeparado', 'percDisciplina', 'percOcupacaoReal','percOcupacaoTotal'])
42 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', '-', 0, '4T2 - Quarta 14h', 0, 0, 0]
43 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', '-', 0, '4T3 - Quarta 15h', 0, 0, 0]
44 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', '-', 0, '6T2 - Sexta 14h', 0, 0, 0]
45 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', '-', 0, '6T3 - Sexta 15h', 0, 0, 0]
46 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '6T3', 85, 84, 'FGA - SALA S-43', 'S43', '-', 0, '6T3 - Sexta 15h', 0, 0, 0]
48 dfExemploSaida = pd.DataFrame()
49 dfExemploSaida = pd.DataFrame(columns=['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor', 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local', 'salaSeparada', 'predio','lotacao', 'horarioSeparado', 'percDisciplina', 'percOcupacaoReal','percOcupacaoTotal'])
50 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', 'UAC', 130, '4T2 - Quarta 14h', 0, 0, 0]
51 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', 'UAC', 130, '4T3 - Quarta 15h', 0, 0, 0]
52 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', 'UAC', 60, '6T2 - Sexta 14h', 0, 0, 0]
53 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', 'UAC', 60, '6T3 - Sexta 15h', 0, 0, 0]
54 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '6T3', 85, 84, 'FGA - SALA S-43', 'S43', 'sala nao encontrada - S43', 1, '6T3 - Sexta 15h', 0, 0, 0]
56 dfTesteResultado = preencherLotacaoPredio(dfExemploEntrada)
58 dfTesteResultado.to_csv('./testesUnitarios/csvTeste02LotacaoPredio.csv', encoding="utf-8", sep=';', index = False)
59 dfTesteResultado = pd.read_csv('./testesUnitarios/csvTeste02LotacaoPredio.csv', encoding="utf-8", sep=';')
61 self.assertIsNone(assert_frame_equal(dfTesteResultado, dfExemploSaida))
62 # fim do metodo testePreencherLotacaoPredio
64 def testeSepararSalas(self):
65 # teste da funcao que troca o nome da sala coletado pelo nome tabelado (padronizado) e
66 # separa as salas quando houver mais de uma sala na mesma turma (salas compostas)
68 listaExemploEntrada = ['FGA - SALA TESTE', 'FGA - SALA LAB SS', 'FGA - SALA S-4 e I-3','FGA - SALAS S7 e I7','FGA - SALA I6 E I7', 'FGA - SALA S1 E S4']
70 listaExemploSaida = [['sala nao padronizada na matriz de comparacao - TESTE'],
71 ['Lab.SS'], ['S04','I03'], ['S07','I07'], ['I06','I07'], ['S01','S04']]
73 listaTesteResultado0 = separarSalas(listaExemploEntrada[0])
74 listaTesteResultado1 = separarSalas(listaExemploEntrada[1])
75 listaTesteResultado2 = separarSalas(listaExemploEntrada[2])
76 listaTesteResultado3 = separarSalas(listaExemploEntrada[3])
77 listaTesteResultado4 = separarSalas(listaExemploEntrada[4])
78 listaTesteResultado5 = separarSalas(listaExemploEntrada[5])
79 listaTesteResultado = [listaTesteResultado0, listaTesteResultado1, listaTesteResultado2,
80 listaTesteResultado3, listaTesteResultado4, listaTesteResultado5]
82 self.assertEqual(listaTesteResultado, listaExemploSaida)
83 # fim do metodo testeSepararSalas
86 def testeSepararHorarios(self):
87 # teste da funcao que separa os horarios por credito
89 listaExemploEntrada = ['46T23','24M12','35M34','7M1234', '2N12', '28M51', '4T1', '2T45', '6N34','5T8']
91 listaExemploSaida = [['4T2 - Quarta 14h','4T3 - Quarta 15h','6T2 - Sexta 14h','6T3 - Sexta 15h'],
92 ['2M1 - Segunda 08h','2M2 - Segunda 09h','4M1 - Quarta 08h','4M2 - Quarta 09h'] ,
93 ['3M3 - Terça 10h','3M4 - Terça 11h','5M3 - Quinta 10h','5M4 - Quinta 11h'] ,
94 ['7M1 - Sábado 08h','7M2 - Sábado 09h','7M3 - Sábado 10h','7M4 - Sábado 11h'],
95 ['2N1 - Segunda 19h','2N2 - Segunda 20h'],
96 ['2M5 - Segunda 12h', '2M1 - Segunda 08h', '8M5 - dia 12h', '8M1 - dia 08h'],
97 ['4T1 - Quarta 13h'],
98 ['2T4 - Segunda 16h','2T5 - Segunda 17h'],
99 ['6N3 - Sexta 21h','6N4 - Sexta 22h'],
100 ['5T8 - Quinta hora']]
102 listaTesteResultado0 = separarHorarios(listaExemploEntrada[0])
103 listaTesteResultado1 = separarHorarios(listaExemploEntrada[1])
104 listaTesteResultado2 = separarHorarios(listaExemploEntrada[2])
105 listaTesteResultado3 = separarHorarios(listaExemploEntrada[3])
106 listaTesteResultado4 = separarHorarios(listaExemploEntrada[4])
107 listaTesteResultado5 = separarHorarios(listaExemploEntrada[5])
108 listaTesteResultado6 = separarHorarios(listaExemploEntrada[6])
109 listaTesteResultado7 = separarHorarios(listaExemploEntrada[7])
110 listaTesteResultado8 = separarHorarios(listaExemploEntrada[8])
111 listaTesteResultado9 = separarHorarios(listaExemploEntrada[9])
112 listaTesteResultado = [listaTesteResultado0, listaTesteResultado1, listaTesteResultado2,
113 listaTesteResultado3, listaTesteResultado4, listaTesteResultado5,
114 listaTesteResultado6, listaTesteResultado7, listaTesteResultado8, listaTesteResultado9]
116 self.assertEqual(listaTesteResultado, listaExemploSaida)
117 # fim do metodo testeSepararHorarios
119 def testeAdicionarLinhasPorHorarioComSalasSeparadas(self):
120 # teste da funcao que chama os metodos que separam os horarios por credito e as salas compostas em salas simples
122 dfExemploEntrada = pd.DataFrame()
123 dfExemploEntrada = pd.DataFrame(columns=['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor', 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local', 'salaSeparada', 'predio','lotacao', 'horarioSeparado', 'percDisciplina', 'percOcupacaoReal','percOcupacaoTotal'])
124 dfExemploEntrada.loc[len(dfExemploEntrada)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', '-', '-', 0, '-', 0, 0, 0]
126 dfExemploSaida = pd.DataFrame()
127 dfExemploSaida = pd.DataFrame(columns=['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor', 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local', 'salaSeparada', 'predio','lotacao', 'horarioSeparado', 'percDisciplina', 'percOcupacaoReal','percOcupacaoTotal'])
128 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', '-', 0, '4T2 - Quarta 14h', 0, 0, 0]
129 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'S04', '-', 0, '4T3 - Quarta 15h', 0, 0, 0]
130 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', '-', 0, '6T2 - Sexta 14h', 0, 0, 0]
131 dfExemploSaida.loc[len(dfExemploSaida)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', 'I03', '-', 0, '6T3 - Sexta 15h', 0, 0, 0]
133 dfTesteResultado = adicionarLinhasPorHorarioComSalasSeparadas(dfExemploEntrada)
135 dfTesteResultado.to_csv('./testesUnitarios/csvTeste01HorariosSalas.csv', encoding="utf-8", sep=';', index = False)
136 dfTesteResultado = pd.read_csv('./testesUnitarios/csvTeste01HorariosSalas.csv', encoding="utf-8", sep=';')
138 self.assertIsNone(assert_frame_equal(dfTesteResultado, dfExemploSaida))
139 # fim do metodo testeAdicionarLinhasPorHorarioComSalasSeparadas
141 def testeSalvarTurmasColetadasNoCsvFiltrandoFGA(self):
142 # teste da funcao que salva as turmas coletadas no arquivo csv verificando se sao disciplinas da FGA ou nao
144 listaExemploEntrada = []
145 listaExemploEntrada.append(['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', '-', '-', 0, '-', 0, 0, 0])
146 listaExemploEntrada.append(['CDT1101 - TECNOLOGIA SOCIAL E INOVAÇÃO', 1, 2022, 2,'TANIA CRISTINA DA SILVA CRUZ','30h','6T1234 (25/10/2022 - 18/02/2023)', 40, 16,'CDT - Sala Interação', '-', '-', 0, '-', 0, 0, 0])
148 listaExemploSaidaColetados = pd.DataFrame()
149 listaExemploSaidaColetados = pd.DataFrame(columns=['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor', 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local', 'salaSeparada', 'predio','lotacao', 'horarioSeparado', 'percDisciplina', 'percOcupacaoReal','percOcupacaoTotal'])
150 listaExemploSaidaColetados.loc[len(listaExemploSaidaColetados)] = ['FGA0003 - COMPILADORES 1', 1, 2022, 2, 'EDSON ALVES DA COSTA JUNIOR', '60h', '46T23', 85, 84, 'FGA - SALA S-4 e I-3', '-', '-', 0, '-', 0, 0, 0]
152 listaExemploSaidaDesprezados = pd.DataFrame()
153 listaExemploSaidaDesprezados = pd.DataFrame(columns=['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor', 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local', 'salaSeparada', 'predio','lotacao', 'horarioSeparado', 'percDisciplina', 'percOcupacaoReal','percOcupacaoTotal'])
154 listaExemploSaidaDesprezados.loc[len(listaExemploSaidaDesprezados)] = ['CDT1101 - TECNOLOGIA SOCIAL E INOVAÇÃO', 1,2022, 2,'TANIA CRISTINA DA SILVA CRUZ', '30h','6T1234 (25/10/2022 - 18/02/2023)',40,16,'CDT - Sala Interação', '-', '-', 0, '-', 0, 0, 0]
156 salvarTurmasColetadasNoCsvFiltrandoFGA(listaExemploEntrada)
158 listaTesteResultadoColetados = pd.read_csv('./testesUnitarios/csvTurmasColetadasFGA.csv', encoding="utf-8", sep=';')
159 listaTesteResultadoDesprezados = pd.read_csv('./testesUnitarios/csvTurmasColetadasQueNaoSaoFGA.csv', encoding="utf-8", sep=';')
161 self.assertIsNone(assert_frame_equal(listaTesteResultadoColetados, listaExemploSaidaColetados))
162 self.assertIsNone(assert_frame_equal(listaTesteResultadoDesprezados, listaExemploSaidaDesprezados))
163 self.assertEqual(all('FGA' in listaTesteResultadoColetados['local'].iloc[i] for i in range(len(listaTesteResultadoColetados))), True)
164 self.assertEqual(all('FGA' not in listaTesteResultadoDesprezados['local'].iloc[i] for i in range(len(listaTesteResultadoDesprezados))), True)
165 # fim do metodo testeSalvarTurmasColetadasNoCsvFiltrandoFGA
167 def testeColetarTurmas(self):
168 # teste da funcao que captura os dados da pagina Sigaa e armazena em uma lista
170 servico = Service(ChromeDriverManager().install())
171 opcoes = webdriver.ChromeOptions()
172 opcoes.add_experimental_option('excludeSwitches', ['enable-logging'])
173 navegador = webdriver.Chrome(service=servico, options=opcoes)
174 url = 'https://sigaa.unb.br/sigaa/public/turmas/listar.jsf?aba=p-ensino'
175 navegador.get(url)
178 navegador.find_element(By.NAME, 'formTurma:inputNivel').send_keys('GRADUAÇÃO')
179 navegador.find_element(By.NAME, 'formTurma:inputDepto').send_keys('CENTRO DE APOIO AO DESENVOLVIMENTO TECNOLÓGICO - BRASÍLIA')
180 navegador.find_element(By.NAME, 'formTurma:inputAno').clear()
181 navegador.find_element(By.NAME, 'formTurma:inputAno').send_keys('2022')
182 navegador.find_element(By.NAME, 'formTurma:inputPeriodo').send_keys('2')
183 navegador.find_element(By.NAME, 'formTurma:j_id_jsp_1370969402_11').click()
185 listaExemploSaida = []
186 listaExemploSaida.append (['CDT1101 - TECNOLOGIA SOCIAL E INOVAÇÃO',' 01','2022','2','TANIA CRISTINA DA SILVA CRUZ','30h','6T1234 (25/10/2022 - 18/02/2023)','40','16','CDT - Sala Interação'])
187 listaExemploSaida.append (['CDT1101 - TECNOLOGIA SOCIAL E INOVAÇÃO',' 01','2022','2','JONATHAS FELIPE AIRES FERREIRA','30h','6T1234 (25/10/2022 - 18/02/2023)','40','16','CDT - Sala Interação'])
189 listaTesteResultado = []
190 time.sleep(2)
191 listaTesteResultado = coletarTurmas(navegador, listaTesteResultado)
192 navegador.quit()
194 self.assertEqual(listaTesteResultado, listaExemploSaida)
195 # fim do metodo testeColetarTurmas
197 def testeGerarConsultas(self):
198 # teste da funcao que preeenche os campos da pagina Sigaa para fazer a consulta e chama a funcao para coletar os dados
200 listaExemploSaida = []
201 listaExemploSaida.append (['CDT1101 - TECNOLOGIA SOCIAL E INOVAÇÃO',' 01','2022','2','TANIA CRISTINA DA SILVA CRUZ','30h','6T1234 (25/10/2022 - 18/02/2023)','40','16','CDT - Sala Interação'])
202 listaExemploSaida.append (['CDT1101 - TECNOLOGIA SOCIAL E INOVAÇÃO',' 01','2022','2','JONATHAS FELIPE AIRES FERREIRA','30h','6T1234 (25/10/2022 - 18/02/2023)','40','16','CDT - Sala Interação'])
204 listaTesteResultado = []
205 listaTesteResultado = gerarConsulta('GRADUAÇÃO', 'CENTRO DE APOIO AO DESENVOLVIMENTO TECNOLÓGICO - BRASÍLIA', '2022', '2', listaTesteResultado)
207 self.assertEqual(listaTesteResultado, listaExemploSaida)
208 # fim do metodo testeGerarConsultas
210 def testeGerarCsv(self):
211 # teste da funcao que gera os arquivos csv vazios apenas com os nomes das colunas
213 dfExemploSaida = pd.DataFrame()
214 dfExemploSaida = pd.DataFrame(columns=['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor', 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local', 'salaSeparada', 'predio','lotacao', 'horarioSeparado', 'percDisciplina', 'percOcupacaoReal','percOcupacaoTotal'])
215 #Dataframe vazio de exemplo de saida
216 dataframeCsv = pd.DataFrame(columns=
217 ['codigNomeMateria', 'codigoTurma', 'ano', 'semestre', 'professor',
218 'cargahoraria', 'horario', 'vagasOfertadas', 'vagasOcupadas', 'local','salaSeparada',
219 'predio','lotacao', 'horarioSeparado', 'percDisciplina',
220 'percOcupacaoReal','percOcupacaoTotal'])
222 gerarCsv()
223 self.assertEqual(os.path.exists('./testesUnitarios/csvTurmasColetadasFGA.csv'), True)
224 self.assertEqual(os.path.exists('./testesUnitarios/csvTurmasColetadasQueNaoSaoFGA.csv'), True)
226 dfTesteResultadoColetados = pd.read_csv('./testesUnitarios/csvTurmasColetadasFGA.csv', encoding="utf-8", sep=';')
227 dfTesteResultadoDesprezados = pd.read_csv('./testesUnitarios/csvTurmasColetadasQueNaoSaoFGA.csv', encoding="utf-8", sep=';')
229 self.assertEqual(dataframeCsv.empty, dfTesteResultadoColetados.empty)
230 self.assertEqual(dataframeCsv.empty, dfTesteResultadoDesprezados.empty)
232 self.assertIsNone(assert_frame_equal(dfTesteResultadoColetados, dfExemploSaida))
233 self.assertIsNone(assert_frame_equal(dfTesteResultadoDesprezados, dfExemploSaida))
234 # fim do metodo testeGerarCsv
236# fim da classe TesteColetaSigaa
238if __name__ == '__main__':
240 unittest.main()
241 # fim do metodo main