【发布时间】:2020-12-30 15:15:20
【问题描述】:
我在模拟函数时遇到了一些问题。它抛出 ValueError 异常并且无法模拟属性。
文件夹结构
root
\api
ProjectFolder
ProjectDetails.py
\GetProjectList
main.py
__init__.py
\test
test_projectList.py
__init__.py
我正在从 ProjectDetails.py 文件中的类“ProjectList”调用一个函数“get_ProjectList”。这是其他文件。
main.py
import logging
import azure.functions as func
from api.ProjectFolder.ProjectDetails import *
def main(req: func.HttpRequest) -> func.HttpResponse:
logging.info('Trigger function for get projects list.')
response, status_code = ProjectList().get_ProjectList()
return func.HttpResponse(response,status_code=status_code)
test_projectList.py
from unittest import mock
import unittest
from GetProjectList.main import *
import azure.functions as func
class Test_ProjectDetails(unittest.TestCase):
def test_ProjectDetails(self):
with mock.patch('api.ProjectFolder.ProjectDetails.ProjectList.get_ProjectList') as mock_get:
mock_get.return_value.status_code = 200
req = func.HttpRequest(
method='GET',
body=None,
url='/GetProjectList'
)
resp = main(req)
expected_status_code = 200
self.assertEqual(resp.status_code,expected_status_code)
if __name__ == '__main__':
unittest.main()
当我运行它时,它会抛出异常说 ValueError: not enough values to unpack (expected 2, got 0) from main.py 并在 response , status_code = ProjectList().get_ProjectList()
**如果复制代码时出现缩进错误则忽略
【问题讨论】:
标签: python python-3.x visual-studio-code azure-functions