Журналы в тесте Flask unit распечатать точку после новой строки - PullRequest
0 голосов
/ 26 марта 2019

У меня есть мертвое простое приложение Flask:

from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello():
    return("Hello World!")

if __name__ == '__main__':
    app.run()

вместе с __main__.py файлом:

from .core import app

import src.core

app.run()

, и я добавил тест:

from unittest import TestCase
import logging as log

import src.core

class runTests(TestCase):

    def setUp(self):
        src.core.app.testing = True
        self.client = src.core.app.test_client()

    def test_hello_world(self):
        response = self.client.get("/")
        log.warning(f"resp: {response.data}")
        self.assertEqual(b"Hello World!",response.data)

общая древовидная структура выглядела так:

➜  apptest tree -L 2
.
├── src
│   ├── core.py
│   ├── __main__.py
│   └── __pycache__
└── tests
    ├── __pycache__
    └── test.py

4 directories, 3 files
➜  apptest

Когда я запускаю тесты, я получаю неожиданный вывод:

➜  apptest python -m unittest tests.test
WARNING:root:resp: b'Hello World!'
.
----------------------------------------------------------------------
Ran 1 test in 0.011s

OK
➜  apptest

После новой строки в журнале появляется эта случайная точка.Я попытался изменить test.py, чтобы проверить это:

from unittest import TestCase
import logging as log

import src.core

class runTests(TestCase):

    def setUp(self):
        src.core.app.testing = True
        self.client = src.core.app.test_client()

    def test_hello_world(self):
        response = self.client.get("/")
        log.warning(f"resp: {response.data}")
        log.warning("2nd log")
        self.assertEqual(b"Hello World!",response.data)

    def test_hello_world_2(self):
        log.warning("3rd log")
        log.warning("4th log")
        self.assertEqual("Hello World!",self.teststring)

И вывод:

➜  apptest python -m unittest tests.test
WARNING:root:resp: b'Hello World!'
WARNING:root:2nd log
.WARNING:root:3rd log
WARNING:root:4th log
.
----------------------------------------------------------------------
Ran 2 tests in 0.011s

OK
➜  apptest

И кажется, что последний журнал каждой функции печатает \n. вместопросто \n, если мое мышление верно.

Что является причиной этого и как от него избавиться?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...