创建 StudentSignInTest.py
parent
692631e395
commit
1a08ba460c
|
|
@ -0,0 +1,39 @@
|
|||
import unittest
|
||||
|
||||
from app.views import *
|
||||
from unittest.mock import patch
|
||||
from flask import session
|
||||
|
||||
|
||||
class StudentSignInTestCase(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
# 设置 Flask 测试模式
|
||||
app.testing = True
|
||||
self.client = app.test_client()
|
||||
|
||||
@patch('db.database_manager.DatabaseManager.update_sign_in_info')
|
||||
def test_student_sign_in(self, mock_update_sign_in_info):
|
||||
# 模拟已登录用户
|
||||
with self.client.session_transaction() as sess:
|
||||
sess['number'] = 'X202301000001'
|
||||
|
||||
# 模拟数据库操作
|
||||
mock_update_sign_in_info.return_value = 1 # 假设成功更新签到信息
|
||||
|
||||
# 发送 POST 请求到/api/student-sign-in
|
||||
response = self.client.post('/api/student-sign-in', data={
|
||||
'course_name': '计算机导论',
|
||||
'course_id': '2',
|
||||
'student_number': 'X202301000001',
|
||||
|
||||
})
|
||||
|
||||
# 验证返回的状态码和JSON数据
|
||||
self.assertEqual(response.status_code, 200)
|
||||
json_data = response.get_json()
|
||||
self.assertEqual(json_data, {"msg": "ok", "data": "签到成功!"})
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
Reference in New Issue