1
0
forked from erp-dev/erp

fix: admin of printing module

This commit is contained in:
2025-11-17 12:11:04 +08:00
parent 81e8c8cb84
commit dff9151651
15 changed files with 473 additions and 23 deletions

View File

@@ -42,9 +42,9 @@ class StateFlowServicesTestCase(TestCase):
)
def test_initial_state(self):
"""测试初始状态 - 应该返回第一个待执行的节点"""
"""测试初始状态 - 应该是 None未开始"""
current_state = self.business_object.get_current_state()
self.assertEqual(current_state.name, self.state1.name, '初始状态应该返回第一个待执行的节点')
self.assertIsNone(current_state, '初始状态应该是 None未开始')
self.assertEqual(self.business_object.get_progress_percentage(), 0.0)
# 整体状态应该是 not_started
@@ -57,18 +57,18 @@ class StateFlowServicesTestCase(TestCase):
success, message, _ = services.advance_to_next_state(self.business_object, self.user)
self.assertTrue(success)
# current_state 应该是下一个待执行的状态state2
# current_state 应该是最后完成的状态state1
current_state = self.business_object.get_current_state()
self.assertEqual(current_state.name, self.state2.name)
self.assertEqual(current_state.name, self.state1.name)
self.assertAlmostEqual(self.business_object.get_progress_percentage(), 33.33, places=1)
# 推进到状态2完成state2
success, message, _ = services.advance_to_next_state(self.business_object, self.user)
self.assertTrue(success)
# current_state 应该是 state3下一个待执行的
# current_state 应该是 state2
current_state = self.business_object.get_current_state()
self.assertEqual(current_state.name, self.state3.name)
self.assertEqual(current_state.name, self.state2.name)
self.assertAlmostEqual(self.business_object.get_progress_percentage(), 66.67, places=1)
# 完成最后一个状态state3
@@ -76,9 +76,9 @@ class StateFlowServicesTestCase(TestCase):
self.assertTrue(success)
self.assertEqual(self.business_object.get_progress_percentage(), 100.0)
# current_state 应该是 None没有待执行的节点了
# current_state 应该是 state3最后完成的状态
current_state = self.business_object.get_current_state()
self.assertIsNone(current_state)
self.assertEqual(current_state.name, self.state3.name)
# 整体状态应该是 completed
status = services.get_overall_status(self.business_object)
@@ -116,7 +116,7 @@ class StateFlowServicesTestCase(TestCase):
timeline = self.business_object.get_timeline()
self.assertEqual(timeline[0]['status'], 'completed')
self.assertEqual(timeline[1]['status'], 'in_progress') # 下一个待执行的节点
self.assertEqual(timeline[1]['status'], 'not_started')
self.assertEqual(timeline[2]['status'], 'not_started')
self.assertIsNotNone(timeline[0]['completed_by'])
self.assertEqual(timeline[0]['completed_by'].id, self.user.id)
@@ -141,9 +141,9 @@ class StateFlowServicesTestCase(TestCase):
cancelled_count = self.business_object.state_logs.filter(is_cancelled=True).count()
self.assertEqual(cancelled_count, 2)
# 应该回到初始状态(返回第一个待执行的节点
# 应该回到初始状态(未开始
current_state = self.business_object.get_current_state()
self.assertEqual(current_state.name, self.state1.name)
self.assertIsNone(current_state)
# 所有撤销的记录都应该有撤销时间
for log in self.business_object.state_logs.all():