コード例 #1
0
def test_json_formatter_is_able_to_deal_with_utf8_fields():
    stream = io.BytesIO()
    output = JsonOutput(stream=stream)
    message = Message(
        INFO,
        u'Некий текст'.encode('utf-8'),
        {
            'time': time.gmtime(),
            'blah': u'минор'.encode('utf-8')
        },
        _default_fields,
        (),
        {},
    )

    output.output(message)
    result = stream.getvalue()
    assert isinstance(result, six.binary_type)
コード例 #2
0
def test_json_formatter_is_able_to_deal_with_utf8_fields():
    stream = io.BytesIO()
    output = JsonOutput(stream=stream)
    message = Message(
        INFO,
        u'Некий текст'.encode('utf-8'),
        {
            'time': time.gmtime(),
            'blah': u'минор'.encode('utf-8')
        },
        _default_fields,
        (),
        {},
    )

    output.output(message)
    result = stream.getvalue()
    assert isinstance(result, six.binary_type)
コード例 #3
0
def test_json_formatter_is_able_to_deal_with_unicode_fields():
    stream = io.StringIO()
    output = JsonOutput(stream=stream)
    message = Message(
        INFO,
        u'Некий текст',
        {
            'time': time.gmtime(),
            'blah': u'минор'
        },
        _default_fields,
        (),
        {},
    )

    output.output(message)
    result = stream.getvalue()
    assert isinstance(result, six.text_type)
コード例 #4
0
def test_json_formatter_is_able_to_deal_with_unicode_fields():
    stream = io.StringIO()
    output = JsonOutput(stream=stream)
    message = Message(
        INFO,
        u'Некий текст',
        {
            'time': time.gmtime(),
            'blah': u'минор'
        },
        _default_fields,
        (),
        {},
    )

    output.output(message)
    result = stream.getvalue()
    assert isinstance(result, six.text_type)
コード例 #5
0
def test_json_formatter_is_able_to_deal_with_unicode_fields():
    # logger usually writes it's output to some file and should
    # encode data into some binary encoding, for example utf-8
    stream = io.BytesIO()
    output = JsonOutput(stream=stream)
    message = Message(
        INFO,
        u'Некий текст',
        {
            'time': time.gmtime(),
            'blah': u'минор'
        },
        _default_fields,
        (),
        {},
    )

    output.output(message)
    result = stream.getvalue()
    assert isinstance(result, six.binary_type)
コード例 #6
0
def test_json_formatter_is_able_to_deal_with_unicode_fields():
    # logger usually writes it's output to some file and should
    # encode data into some binary encoding, for example utf-8
    stream = io.BytesIO()
    output = JsonOutput(stream=stream)
    message = Message(
        INFO,
        u'Некий текст',
        {
            'time': time.gmtime(),
            'blah': u'минор'
        },
        _default_fields,
        (),
        {},
    )

    output.output(message)
    result = stream.getvalue()
    assert isinstance(result, six.binary_type)
コード例 #7
0
def test_json_formatter_does_not_dump_long_as_string():
    # https://github.com/svetlyak40wt/twiggy-goodies/issues/3
    if sys.version_info.major == 2:
        # this test makes sense only for python 2.x
        # because there is no separation between integer and long
        # in python 3

        stream = io.BytesIO()
        output = JsonOutput(stream=stream)
        message = Message(
            INFO,
            u'Какой-то текст сообщения',
            {
                'time': time.gmtime(),
                'request_id': long(1234),
            },
            _default_fields,
            (),
            {},
        )

        output.output(message)
        result = stream.getvalue()
        assert '"request_id": 1234' in result.decode('utf-8')
コード例 #8
0
def test_json_formatter_does_not_dump_long_as_string():
    # https://github.com/svetlyak40wt/twiggy-goodies/issues/3
    if sys.version_info.major == 2:
        # this test makes sense only for python 2.x
        # because there is no separation between integer and long
        # in python 3

        stream = io.BytesIO()
        output = JsonOutput(stream=stream)
        message = Message(
            INFO,
            u'Какой-то текст сообщения',
            {
                'time': time.gmtime(),
                'request_id': long(1234),
            },
            _default_fields,
            (),
            {},
        )

        output.output(message)
        result = stream.getvalue()
        assert '"request_id": 1234' in result.decode('utf-8')