Skip to content

Instantly share code, notes, and snippets.

@jamesperes-zz
Created August 14, 2018 03:31
Show Gist options
  • Save jamesperes-zz/7b410baac8df7adfd05cd5418a8055e2 to your computer and use it in GitHub Desktop.
Save jamesperes-zz/7b410baac8df7adfd05cd5418a8055e2 to your computer and use it in GitHub Desktop.

Revisions

  1. @jamesperes jamesperes created this gist Aug 14, 2018.
    107 changes: 107 additions & 0 deletions test_norm.py
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,107 @@

    import unittest
    import platform

    from normalizador import normalizar, normalizar_alternativas, peso_criterios, soma_alternativa_por_criterio, multiplica_final

    class EnvTest(unittest.TestCase):
    def test_python_version(self):
    self.assertEqual(platform.python_version(), '3.6.5')

    class NormalizarTest(unittest.TestCase):
    lista_elem = [[0, -1 , 2], [1, 0 , -1], [-2, 1, 0]]
    def test_recebe_lista_soma_primeiro_elemento(self):
    normalizado = normalizar(self.lista_elem)
    self.assertEqual(normalizado[0], 1)
    def test_recebe_lista_segundo_elemento(self):
    normalizado = normalizar(self.lista_elem)
    self.assertEqual(normalizado[1], 0.5)
    def test_recebe_lista_terceiro_elemento(self):
    normalizado = normalizar(self.lista_elem)
    self.assertEqual(normalizado[2], 0.005)


    class NormalizarSegundoTest(unittest.TestCase):
    lista_elem = [[0, 3 , 1, -1], [-3, 0 , -2, -3], [-1, 2, 0, -2], [1, 3, 2, 0]]
    def test_recebe_lista_soma_primeiro_elemento(self):
    normalizado = normalizar(self.lista_elem)
    self.assertEqual(normalizado[0], 0.7857142857142857)
    def test_recebe_lista_segundo_elemento(self):
    normalizado = normalizar(self.lista_elem)
    self.assertEqual(normalizado[1], 0.005)
    def test_recebe_lista_terceiro_elemento(self):
    normalizado = normalizar(self.lista_elem)
    self.assertEqual(normalizado[2], 0.5)
    def test_recebe_lista_quarto_elemento(self):
    normalizado = normalizar(self.lista_elem)
    self.assertEqual(normalizado[3], 1)



    class NormalizarAlternativasTest(unittest.TestCase):
    lista_elem = [[0, 1 , 2, 3], [-1, 0 , 1, 3], [-2, -1, 0, 1], [-3, -3, -1, 0]]
    def test_recebe_lista_soma_primeiro_elemento(self):
    normalizado = normalizar_alternativas(self.lista_elem)
    self.assertEqual(normalizado[0], 1)
    def test_recebe_lista_segundo_elemento(self):
    normalizado = normalizar_alternativas(self.lista_elem)
    self.assertEqual(normalizado[1], 0.7692307692307693)
    def test_recebe_lista_terceiro_elemento(self):
    normalizado = normalizar_alternativas(self.lista_elem)
    self.assertEqual(normalizado[2], 0.38461538461538464)
    def test_recebe_lista_quarto_elemento(self):
    normalizado = normalizar_alternativas(self.lista_elem)
    self.assertEqual(normalizado[3], 0)

    class PesosTest(unittest.TestCase):
    lista_elem = [[0.786, 0.005 , 0.5, 1], [1, 0.003 , 0.667, 0.333], [1, 0.5, 0.005, 0.5]]
    def test_recebe_lista_pesos_primeiro_elemento(self):
    normalizado = peso_criterios(self.lista_elem)
    self.assertEqual(normalizado[0], 2.786)
    def test_recebe_lista_pesos_segundo_elemento(self):
    normalizado = peso_criterios(self.lista_elem)
    self.assertEqual(normalizado[1], 0.508)
    def test_recebe_lista_pesos_terceiro_elemento(self):
    normalizado = peso_criterios(self.lista_elem)
    self.assertEqual(normalizado[2], 1.172)
    def test_recebe_lista_pesos_quarto_elemento(self):
    normalizado = peso_criterios(self.lista_elem)
    self.assertEqual(normalizado[3], 1.833)


    class SomaAltenativasTest(unittest.TestCase):
    lista_elem = [[1, 0.769 , 0.385, 0], [0.667, 1 , 0, 0.333], [1, 1, 0, 0]]
    def test_recebe_lista_alternativa_primeiro_elemento(self):
    normalizado = soma_alternativa_por_criterio(self.lista_elem)
    self.assertEqual(normalizado[0], 2.667)
    def test_recebe_lista_alternativas_segundo_elemento(self):
    normalizado = soma_alternativa_por_criterio(self.lista_elem)
    self.assertEqual(normalizado[1], 2.769)
    def test_recebe_lista_alternativas_terceiro_elemento(self):
    normalizado = soma_alternativa_por_criterio(self.lista_elem)
    self.assertEqual(normalizado[2], 0.385)
    def test_recebe_lista_alternativas_quarto_elemento(self):
    normalizado = soma_alternativa_por_criterio(self.lista_elem)
    self.assertEqual(normalizado[3], 0.333)


    class MultiplicaFinalTest(unittest.TestCase):
    lista_elem = [[2.667, 2.769 , 0.385, 0.333], [0, 2.667 , 2.667, 0.666], [2.167, 3, 2.667, 0], [2, 1.333, 1, 0.333]]
    lista_pesos = [2.786, 0.508, 1.172, 1.833]
    def test_recebe_lista_alternativa_primeiro_elemento(self):
    normalizado = multiplica_final(self.lista_elem, self.lista_pesos)
    self.assertEqual(normalizado[0], 13.635985999999999)
    def test_recebe_lista_alternativas_segundo_elemento(self):
    normalizado = multiplica_final(self.lista_elem, self.lista_pesos)
    self.assertEqual(normalizado[1], 15.028659000000001)
    def test_recebe_lista_alternativas_terceiro_elemento(self):
    normalizado = multiplica_final(self.lista_elem, self.lista_pesos)
    self.assertEqual(normalizado[2], 7.38617)
    def test_recebe_lista_alternativas_quarto_elemento(self):
    normalizado = multiplica_final(self.lista_elem, self.lista_pesos)
    self.assertEqual(normalizado[3], 1.8764550000000002)



    if __name__ == '__main__':
    unittest.main()