创建 TeacherSignInTest.py
parent
1174b225a7
commit
692631e395
|
|
@ -0,0 +1,37 @@
|
||||||
|
import unittest
|
||||||
|
|
||||||
|
from app.views import *
|
||||||
|
from unittest.mock import patch
|
||||||
|
from flask import session
|
||||||
|
|
||||||
|
class TeacherSignInTestCase(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_teacher_sign_in(self, mock_teacher_sign_in):
|
||||||
|
# 模拟已登录用户
|
||||||
|
with self.client.session_transaction() as sess:
|
||||||
|
sess['number'] = 'X202301000001'
|
||||||
|
|
||||||
|
# 模拟数据库操作的返回值
|
||||||
|
mock_teacher_sign_in.return_value = {"msg": "当前班级专业没有学生'"}
|
||||||
|
|
||||||
|
# 发送 POST 请求到/api/teacher-sign-in
|
||||||
|
response = self.client.post('/api/teacher-sign-in', data={
|
||||||
|
'course_id': '123',
|
||||||
|
'course_name': 'Test Course',
|
||||||
|
'class_name': 'TestClass',
|
||||||
|
'major_id': '456'
|
||||||
|
})
|
||||||
|
|
||||||
|
# 验证返回的状态码和数据
|
||||||
|
self.assertEqual(response.status_code, 200)
|
||||||
|
json_data = response.get_json()
|
||||||
|
self.assertEqual(json_data, {"msg": "当前班级专业没有学生"})
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
unittest.main()
|
||||||
Reference in New Issue