示例#1
0
def track_pack(provider, track):
    if provider == 'ect':
        try:
            encomenda = Correios.encomenda(track)

            resposta = dict()
            result = []

            for status in encomenda.status:
                historico = dict()

                historico['data'] = status.data
                historico['local'] = status.local
                historico['situacao'] = status.situacao
                historico['detalhes'] = status.detalhes

                result.append(historico)

            resposta['servico'] = provider
            resposta['codigo'] = track
            resposta['historico'] = result

            return json.dumps(resposta)

        except AttributeError:
            response.status = '404 O pacote %s informado nao pode ser localizado' % track
    else:
        response.status = '404 O Servico %s nao pode ser encontrado' % provider
示例#2
0
class CorreiosTestCase(unittest.TestCase):
    def setUp(self):
        self.correios = Correios()

    def test_get_url(self):
        self.assertEqual(self.correios._get_url('rastreio', 'PR12345BR'),
                         'http://api.postmon.com.br/v1/rastreio/PR12345BR')

    @requests_mock.Mocker()
    def test_cep(self, request_mock):
        url = 'http://api.postmon.com.br/v1/cep/59142070'
        data = {
            'Rua': 'Hawaii',
            'Número': '160',
            'Bairro': 'Ponta Negra',
            'Cidade': 'Natal',
            'Estado': 'Rio Grande do Norte',
            'UF': 'RN',
            'CEP': '59142-070'
        }
        request_mock.get(url, json=data)
        self.assertEqual(self.correios.cep('59142070'), data)

    @requests_mock.Mocker()
    def test_encomenda(self, request_mock):
        url = 'http://api.postmon.com.br/v1/rastreio/ect/PR12345BR'
        data = {
            'Codigo': '12345',
            'Cidade': 'Natal/RN',
            'Status': 'Saiu para entrega'
        }
        request_mock.get(url, json=data)
        self.assertEqual(self.correios.encomenda('PR12345BR'), data)
示例#3
0
def track_pack(provider, track):
	if provider == 'ect':
		try:
			encomenda = Correios.encomenda(track)

			resposta = dict()
			result = []

			for status in encomenda.status:
				historico = dict()
				
				historico['data'] = status.data
				historico['local'] = status.local
				historico['situacao'] = status.situacao
				historico['detalhes'] = status.detalhes

				result.append(historico)

			resposta['servico'] = provider
			resposta['codigo'] = track
			resposta['historico'] = result

			return format_result(resposta)

		except AttributeError:
			response.status = '404 O pacote %s informado nao pode ser localizado' %track
	else:
		response.status = '404 O Servico %s nao pode ser encontrado' %provider
示例#4
0
def track_pack(provider, track):
    if provider == 'ect':
        try:
            encomenda = Correios.encomenda(track)

            resposta = dict()
            result = []

            for status in encomenda.status:
                historico = dict()
                historico['data'] = status.data
                historico['local'] = status.local
                historico['situacao'] = status.situacao
                historico['detalhes'] = status.detalhes

                result.append(historico)

            resposta['servico'] = provider
            resposta['codigo'] = track
            resposta['historico'] = result

            return format_result(resposta)

        except AttributeError:
            message = "404 Pacote %s nao encontrado" % track
            logger.exception(message)
            response.status = message
    else:
        message = '404 Servico %s nao encontrado' % provider
        logger.warning(message)
        response.status = message
 def test_should_use_repository_to_get_encomenda(self):
     encomenda_repository_mock = Mock()
     when(encomenda_repository_mock).get('123').thenReturn('encomenda123')
     
     Correios.encomenda_repository = encomenda_repository_mock
     
     assert Correios.encomenda('123') == 'encomenda123'
示例#6
0
 def get(self):
     self.response.headers['Content-Type'] = 'text/xml'
     self.response.out.write('<?xml version="1.0" encoding="UTF-8"?>')
     
     encomenda = None
     try:
         encomenda = Correios.encomenda(self.request.get('numero', default_value=''))
     except Exception, e:
         pass #will return empty result :)
示例#7
0
    def get(self):
        self.response.headers['Content-Type'] = 'text/xml'
        self.response.out.write('<?xml version="1.0" encoding="UTF-8"?>')

        encomenda = None
        try:
            encomenda = Correios.encomenda(
                self.request.get('numero', default_value=''))
        except Exception, e:
            pass  #will return empty result :)
示例#8
0
# coding: utf-8

__author__ = 'Andreas'

from correios import Correios

encomenda = Correios.encomenda('PE129381952BR')

print encomenda.numero

for status in encomenda.status:
    print "Data: %s" % status.data
    print "Local: %s" % status.local
    print "Situacao: %s" % status.situacao
    print "Detalhes: %s" % status.detalhes
    print '-------------------------------'
示例#9
0
# coding: utf-8

__author__ = 'Andreas'


from correios import Correios

encomenda = Correios.encomenda('PE129381952BR')

print encomenda.numero

for status in encomenda.status:
    print "Data: %s" % status.data
    print "Local: %s" % status.local
    print "Situacao: %s" % status.situacao
    print "Detalhes: %s" % status.detalhes
    print '-------------------------------'


示例#10
0
from correios import Correios

encomenda = Correios.encomenda("ES446391025BR")
print encomenda.numero

for status in encomenda.status:
    print "Data: %s" % status.data
    print "Local: %s" % status.local
    print "Situacao: %s" % status.situacao
    print "Detalhes: %s" % status.detalhes
    print
示例#11
0
from correios import Correios

__author__ = 'Andreas'

encomenda = Correios.encomenda("PE129381952BR")
ultimo = encomenda.ultimo_status_disponivel()
print "%s, %s, %s" % (ultimo.data, ultimo.local, ultimo.situacao)
示例#12
0
from correios import Correios

try:
  encomenda = Correios.encomenda("PJ514632791BR")
  for status in encomenda.status:
      print "Data: %s" % status.data
      print "Local: %s" % status.local
      print "Situacao: %s" % status.situacao
      print "Detalhes: %s" % status.detalhes
      print
except Exception as e:
  print e
示例#13
0
from correios import Correios

__author__ = 'Andreas'


encomenda = Correios.encomenda("PE129381952BR")
ultimo = encomenda.ultimo_status_disponivel()
print "%s, %s, %s" % (ultimo.data, ultimo.local, ultimo.situacao)
示例#14
0
from correios import Correios

encomenda = Correios.encomenda("ES446391025BR")
print encomenda.numero

for status in encomenda.status:
    print "Data: %s" % status.data
    print "Local: %s" % status.local
    print "Situacao: %s" % status.situacao
    print "Detalhes: %s" % status.detalhes
    print