Как разместить содержимое файла JSON с помощью модуля paste.fixture для тестирования приложения web.py - PullRequest
0 голосов
/ 27 мая 2019

У меня есть приложение web.py, и мне нужно провести несколько тестов + получить отчет о покрытии тестов. Мне нужно проверить метод POST и отправить JSON, который содержит символ ascii STL (3d-файл).

При использовании модуля requests я легко могу просто прикрепить этот json к POST и полностью подтвердить все, но когда я пытаюсь переключиться на paste.fixture, я понятия не имею, как я могу отправить этот json, и я Невозможно найти какие-либо примеры, не говоря уже о документации, не совсем объяснительной.

Тестовый скрипт с использованием запросов (работает):

        up = { 
            "stl_file": open("3dModel.stl", "rb"),
            "Stl_type": "regular",
            "Mark": "U",
            "parameters": (None, open("parameters.json"), "application/json")
        }

        r = requests.post("http://%s/StlProcessing" % host, files=up)

Тестовый скрипт с использованием paste.fixture (не работает):

middleware = []
testApp = TestApp(app.wsgifunc(*middleware))
        up = { 
            "stl_file": open("3dModel.stl", "rb"),
            "Stl_type": "regular",
            "Mark": "U",
            "parameters": (None, open("parameters.json"), "application/json")
        }

        with open('upload_files.txt', 'w') as outfile:  
            json.dump(str(up), outfile)


        filedata = [("Filedata","upload_files.txt")]

        r = testApp.post("http://%s/StlProcessing" % host, upload_files=filedata)

Я ожидаю, что сообщение сможет загрузить JSON

...