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',), )
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 ) )