Exemplo n.º 1
0
    def setUp(self):
        self._status_existentes = (
            'CONCLUIDO',
            'EM_APROVACAO',
            'CANCELADO',
        )
        self._status = Enumeracao(*self._status_existentes)

        self._formas_de_pagamento = Enumeracao(
            ('A_VISTA', u'Pagamento à vista',),
            ('PARCELADO', u'Pagamento parcelado',),
            ('FATURADO', u'Pagamento faturado',),
        )
Exemplo n.º 2
0
class EnumeracaoTest(unittest.TestCase):

    def setUp(self):
        self._status_existentes = (
            'CONCLUIDO',
            'EM_APROVACAO',
            'CANCELADO',
        )
        self._status = Enumeracao(*self._status_existentes)

        self._formas_de_pagamento = Enumeracao(
            ('A_VISTA', u'Pagamento à vista',),
            ('PARCELADO', u'Pagamento parcelado',),
            ('FATURADO', u'Pagamento faturado',),
        )
        
    def test_enumeracao_simples(self):
        status = self._status

        self.assertNotEquals(status.CONCLUIDO, status.EM_APROVACAO)
        self.assertNotEquals(status.CONCLUIDO, status.CANCELADO)
        self.assertNotEquals(status.EM_APROVACAO, status.CANCELADO)

    def test_enumeracao_com_nomes_descritivos(self):
        formas_de_pagamento = self._formas_de_pagamento

        self.assertNotEquals(formas_de_pagamento.A_VISTA, formas_de_pagamento.PARCELADO)
        self.assertNotEquals(formas_de_pagamento.A_VISTA, formas_de_pagamento.FATURADO)
        self.assertNotEquals(formas_de_pagamento.PARCELADO, formas_de_pagamento.FATURADO)

    def test_obter_iteravel(self):
        # NOTE: Disponivel apenas em enumeracoes com nomes descritivos.
        self.assertIsNone(self._status.obter_iteravel())
        self.assertIsNotNone(self._formas_de_pagamento.obter_iteravel())

    def test_obter_nome_descritivo(self):
        self.assertIsNotNone(
            self._formas_de_pagamento.obter_nome_descritivo(
                self._formas_de_pagamento.A_VISTA
            )
        )