feat: split generate title and image statuses
This commit is contained in:
+120
-3
@@ -209,7 +209,7 @@ class GuiTests(TempDirMixin, unittest.TestCase):
|
||||
generate_model.set_tasks([generate_task], [account])
|
||||
self.assertEqual(
|
||||
"请求生成标题失败:cmhub 上游生成失败",
|
||||
generate_model.data(generate_model.index(0, 4), gui.Qt.ToolTipRole),
|
||||
generate_model.data(generate_model.index(0, 5), gui.Qt.ToolTipRole),
|
||||
)
|
||||
|
||||
apply_model = gui.ApplyTaskTableModel()
|
||||
@@ -1645,11 +1645,128 @@ class GuiTests(TempDirMixin, unittest.TestCase):
|
||||
self.assertFalse(hasattr(tab, "save_cover_template_as_button"))
|
||||
self.assertFalse(hasattr(tab, "rename_cover_template_button"))
|
||||
self.assertFalse(hasattr(tab, "delete_cover_template_button"))
|
||||
self.assertEqual(["店铺", "商品ID", "旧标题", "新标题", "状态"], tab.model.HEADERS)
|
||||
self.assertEqual(
|
||||
["店铺", "商品ID", "旧标题", "新标题", "标题状态", "图片状态"],
|
||||
tab.model.HEADERS,
|
||||
)
|
||||
self.assertEqual("任务 0/0 条", tab.summary_label.text())
|
||||
|
||||
self.assert_removed(temp_dir)
|
||||
|
||||
def test_generate_table_splits_title_and_cover_statuses_and_widths(self):
|
||||
with self.make_temp_dir() as temp_dir:
|
||||
account = SimpleNamespace(alias="papa", account_name="papa 店铺")
|
||||
tasks = [
|
||||
SimpleNamespace(
|
||||
alias="papa",
|
||||
account_name="papa 店铺",
|
||||
item_id="1001",
|
||||
old_title="旧标题1",
|
||||
new_title="",
|
||||
new_cover_path="",
|
||||
stage="imported",
|
||||
status="failed",
|
||||
last_error="读标题失败:页面错误",
|
||||
collect_attempts=1,
|
||||
generate_attempts=0,
|
||||
apply_attempts=0,
|
||||
committed=0,
|
||||
),
|
||||
SimpleNamespace(
|
||||
alias="papa",
|
||||
account_name="papa 店铺",
|
||||
item_id="1002",
|
||||
old_title="旧标题2",
|
||||
new_title="",
|
||||
new_cover_path="",
|
||||
stage="collected",
|
||||
status="failed",
|
||||
last_error="请求生成标题失败:cmhub 上游失败",
|
||||
collect_attempts=1,
|
||||
generate_attempts=1,
|
||||
apply_attempts=0,
|
||||
committed=0,
|
||||
),
|
||||
SimpleNamespace(
|
||||
alias="papa",
|
||||
account_name="papa 店铺",
|
||||
item_id="1003",
|
||||
old_title="旧标题3",
|
||||
new_title="新标题3",
|
||||
new_cover_path="",
|
||||
stage="generated",
|
||||
status="failed",
|
||||
last_error="请求生成封面失败:等待 cmhub 返回超时",
|
||||
collect_attempts=1,
|
||||
generate_attempts=2,
|
||||
apply_attempts=0,
|
||||
committed=0,
|
||||
),
|
||||
SimpleNamespace(
|
||||
alias="papa",
|
||||
account_name="papa 店铺",
|
||||
item_id="1004",
|
||||
old_title="旧标题4",
|
||||
new_title="新标题4",
|
||||
new_cover_path="",
|
||||
stage="generated",
|
||||
status="success",
|
||||
last_error="",
|
||||
collect_attempts=1,
|
||||
generate_attempts=1,
|
||||
apply_attempts=0,
|
||||
committed=0,
|
||||
),
|
||||
SimpleNamespace(
|
||||
alias="papa",
|
||||
account_name="papa 店铺",
|
||||
item_id="1005",
|
||||
old_title="旧标题5",
|
||||
new_title="新标题5",
|
||||
new_cover_path="new.jpg",
|
||||
stage="generated",
|
||||
status="success",
|
||||
last_error="",
|
||||
collect_attempts=1,
|
||||
generate_attempts=1,
|
||||
apply_attempts=0,
|
||||
committed=0,
|
||||
),
|
||||
]
|
||||
model = gui.GenerateTaskTableModel()
|
||||
model.set_tasks(tasks, [account])
|
||||
|
||||
self.assertEqual("采集失败", model.index(0, 4).data())
|
||||
self.assertEqual("采集失败", model.index(0, 5).data())
|
||||
self.assertEqual("失败", model.index(1, 4).data())
|
||||
self.assertEqual("未启用", model.index(1, 5).data())
|
||||
self.assertEqual("已生成", model.index(2, 4).data())
|
||||
self.assertEqual("失败", model.index(2, 5).data())
|
||||
self.assertEqual("已生成", model.index(3, 4).data())
|
||||
self.assertEqual("未启用", model.index(3, 5).data())
|
||||
|
||||
model.set_generate_cover_enabled(True)
|
||||
self.assertEqual("未开始", model.index(1, 5).data())
|
||||
self.assertEqual("待生成", model.index(3, 5).data())
|
||||
self.assertEqual("已生成", model.index(4, 5).data())
|
||||
|
||||
tab = GenerateTab(config=self.make_config(temp_dir))
|
||||
self.addCleanup(tab.close)
|
||||
tab.task_table.resize(600, 240)
|
||||
tab.task_table.show()
|
||||
QApplication.processEvents()
|
||||
tab._apply_task_table_column_widths()
|
||||
header = tab.task_table.horizontalHeader()
|
||||
self.assertLess(header.sectionSize(1), header.sectionSize(0))
|
||||
self.assertAlmostEqual(
|
||||
header.sectionSize(4),
|
||||
header.sectionSize(5),
|
||||
delta=5,
|
||||
)
|
||||
self.assertGreater(header.sectionSize(4), header.sectionSize(0))
|
||||
|
||||
self.assert_removed(temp_dir)
|
||||
|
||||
def test_generate_tab_shows_cmhub_balance_and_billing_error(self):
|
||||
with self.make_temp_dir() as temp_dir:
|
||||
cfg = self.make_config(temp_dir)
|
||||
@@ -3858,7 +3975,7 @@ class GuiTests(TempDirMixin, unittest.TestCase):
|
||||
tab.status_filter.setCurrentIndex(tab.status_filter.findData("all"))
|
||||
tab.batch_filter.setCurrentIndex(tab.batch_filter.findData(batch_b))
|
||||
self.assertEqual(1, tab.model.rowCount())
|
||||
self.assertEqual("生成失败", tab.model.index(0, 4).data())
|
||||
self.assertEqual("失败", tab.model.index(0, 4).data())
|
||||
self.assert_foreground(tab.model, 0, 4, gui.COLOR_DANGER)
|
||||
self.assertEqual(
|
||||
"生成失败",
|
||||
|
||||
Reference in New Issue
Block a user