class ExtratorDeDados(Parser): begin = r'^\s+CUPOM FISCAL\s+$' end = r'^FAB:.*BR$' number_of_blocks_in_cache = 1 COO = IntegerField(r'COO:\s?(\d+)') Cancelado = BooleanField(r'^\s+(CANCELAMENTO)\s+$') Total = FloatField(r'^TOTAL R\$\s+(\d+,\d+)') Itens = CampoItem(is_list=True)
def test_should_return_value_with_custom_decimal_separator(self): s = "VENDA BRUTA: 10,036#70" field = FloatField(r'VENDA BRUTA:\s+([\d,]+#\d+)', decimal_separator='#') value = field.parse_block(s) self.assertEqual(value, 10036.7)
def test_should_return_value_with_custom_thousand_separator(self): s = "VENDA BRUTA: 10#036.70" field = FloatField(r'VENDA BRUTA:\s+([\d#]+.\d+)', thousand_separator='#') value = field.parse_block(s) self.assertEqual(value, 10036.7)
def test_should_return_value_with_thousand_separator(self): s = "VENDA BRUTA DIÁRIA: 10,036.70" field = FloatField(r'VENDA BRUTA DIÁRIA:\s+([\d,]+.\d+)') value = field.parse_block(s) self.assertEqual(value, 10036.7)
def test_should_return_value(self): s = "VENDA BRUTA DIÁRIA: 793.00" field = FloatField(r'VENDA BRUTA DIÁRIA:\s+(\d+\.\d+)') value = field.parse_block(s) self.assertEqual(value, 793.0)
class ExtratorDeDados(Parser): begin = r'^\s+CUPOM FISCAL\s+$' end = r'^FAB:.*BR$' Total = FloatField(r'^TOTAL R\$\s+(\d+,\d+)')