Exemplo n.º 1
0
    def test_decode_none_values_for_missed_ones(self):
        msg = f('A|||B')
        res = ['A', None, None, 'B']
        self.assertEqual(res, codec.decode_record(msg, 'ascii'))

        msg = f('A|B^^C^D^^E|F')
        res = ['A', ['B', None, 'C', 'D', None, 'E'], 'F']
        self.assertEqual(res, codec.decode_record(msg, 'ascii'))
Exemplo n.º 2
0
    def test_decode_none_values_for_missed_ones(self):
        msg = f("A|||B")
        res = ["A", None, None, "B"]
        self.assertEqual(res, codec.decode_record(msg, "ascii"))

        msg = f("A|B^^C^D^^E|F")
        res = ["A", ["B", None, "C", "D", None, "E"], "F"]
        self.assertEqual(res, codec.decode_record(msg, "ascii"))
Exemplo n.º 3
0
 def test_decode_with_repeated_components(self):
     msg = f('A|B^C\D^E|F')
     res = ['A', [['B', 'C'], ['D', 'E']], 'F']
     self.assertEqual(res, codec.decode_record(msg, 'ascii'))
Exemplo n.º 4
0
 def test_decode(self):
     msg = f('P|1|2776833|||ABC||||||||||||||||||||')
     res = ['P', '1', '2776833', None, None, 'ABC'] + [None] * 20
     self.assertEqual(res, codec.decode_record(msg, 'ascii'))
Exemplo n.º 5
0
 def test_encode_record(self):
     msg = b'A|B^C\D^E|F^G|H'
     record = codec.decode_record(msg, 'ascii')
     self.assertEqual(msg, codec.encode_record(record, 'ascii'))
Exemplo n.º 6
0
 def test_decode_nonascii_chars_as_unicode(self):
     msg = f('привет|мир|!', 'utf8')
     res = [u('привет'), u('мир'), '!']
     self.assertEqual(res, codec.decode_record(msg, 'utf8'))
Exemplo n.º 7
0
# -*- coding: utf-8 -*-
#
# Copyright (C) 2012 Alexander Shorin
# All rights reserved.
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution.
#

import datetime
import unittest
from astm import codec
from astm import omnilab
from astm.constants import ENCODING

decode_record = lambda r: codec.decode_record(r.encode(), ENCODING)
encode_record = lambda r: codec.encode_record(r, ENCODING)


class OmnilabTestCase(unittest.TestCase):

    def test_header_request(self):
        data = 'H|\^&|||HOST^1.0.0|||||||P|E 1394-97|20091116104731'
        header = omnilab.client.Header(*decode_record(data))
        self.assertEqual(header.type, 'H')
        self.assertEqual(header.sender.name, 'HOST')
        self.assertEqual(header.sender.version, '1.0.0')
        self.assertEqual(header.version, 'E 1394-97')
        self.assertEqual(header.timestamp,
                         datetime.datetime(2009, 11, 16, 10, 47, 31))
Exemplo n.º 8
0
# -*- coding: utf-8 -*-
#
# Copyright (C) 2012 Alexander Shorin
# All rights reserved.
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution.
#

import datetime
import unittest
from astm import codec
from astm import omnilab
from astm.constants import ENCODING

decode_record = lambda r: codec.decode_record(r.encode(), ENCODING)
encode_record = lambda r: codec.encode_record(r, ENCODING)


class OmnilabTestCase(unittest.TestCase):
    def test_header_request(self):
        data = 'H|\^&|||HOST^1.0.0|||||||P|E 1394-97|20091116104731'
        header = omnilab.client.Header(*decode_record(data))
        self.assertEqual(header.type, 'H')
        self.assertEqual(header.sender.name, 'HOST')
        self.assertEqual(header.sender.version, '1.0.0')
        self.assertEqual(header.version, 'E 1394-97')
        self.assertEqual(header.timestamp,
                         datetime.datetime(2009, 11, 16, 10, 47, 31))

    def test_header_response(self):
Exemplo n.º 9
0
 def test_decode_with_repeated_components(self):
     msg = f("A|B^C\D^E|F")
     res = ["A", [["B", "C"], ["D", "E"]], "F"]
     self.assertEqual(res, codec.decode_record(msg, "ascii"))
Exemplo n.º 10
0
 def test_decode(self):
     msg = f("P|1|2776833|||ABC||||||||||||||||||||")
     res = ["P", "1", "2776833", None, None, "ABC"] + [None] * 20
     self.assertEqual(res, codec.decode_record(msg, "ascii"))
Exemplo n.º 11
0
 def test_encode_record(self):
     msg = b"A|B^C\D^E|F^G|H"
     record = codec.decode_record(msg, "ascii")
     self.assertEqual(msg, codec.encode_record(record, "ascii"))
Exemplo n.º 12
0
 def test_decode_nonascii_chars_as_unicode(self):
     msg = f("привет|мир|!", "utf8")
     res = [u("привет"), u("мир"), "!"]
     self.assertEqual(res, codec.decode_record(msg, "utf8"))