É possível rodas os testes com 'python test/test_*.py'
[cascardo/irpf-gui.git] / test / test_contribuinte.py
1 # -*- mode: python; encoding: utf-8; -*-
2 import unittest
3 import sys
4 import os
5 import dirs
6 dirs.default_irpf_dir = dirs.IRPFTestDir()
7
8 from contribuinte import Contribuinte
9
10 class TestContribuinte(unittest.TestCase):
11
12     def setUp(self):
13         self.cpf = '34278161174'
14         self.cpf_normalizado = '342.781.611-74'
15
16         self.cpf_invalido = '34278161175'
17
18         self.contribuinte = Contribuinte(self.cpf)
19
20     def test_ValidarCPF(self):
21         msg = 'Validação de CPF falhou!'
22         self.assertTrue(self.contribuinte._validate_cpf(self.cpf), msg)
23         self.assertFalse(self.contribuinte._validate_cpf(self.cpf_invalido), msg)
24
25     def test_NormalizeCPF(self):
26         msg = 'Normalização falhou'
27         self.assertEqual(self.contribuinte._normalize_cpf(self.cpf),
28                 self.cpf_normalizado, msg)
29
30     def test_MinimizarCPF(self):
31         msg = 'Minimizar CPF falhou'
32         self.assertEqual(self.contribuinte._minimize_cpf(self.cpf_normalizado),
33                 self.cpf, msg)
34
35     def test_GetCampoContribuiente(self):
36         self.assertEqual(self.contribuinte.get_campo_contribuinte('cep'),
37                 '31230-120')
38         self.assertEqual(self.contribuinte.get_campo_contribuinte('nome'),
39                 'MARIA DA SILVA DE SOUZA')
40
41 if __name__ == '__main__':
42     unittest.main()
43
44 # vim:tabstop=4:expandtab:smartindent:fenc=utf8