From ad1bd7f6e06909fb65899ed2c03a4b554c17178e Mon Sep 17 00:00:00 2001 From: felinae98 <731499577@qq.com> Date: Mon, 30 Aug 2021 15:26:20 +0800 Subject: [PATCH] Add 3 pic merge --- CHANGELOG.md | 1 + src/plugins/nonebot_hk_reporter/post.py | 9 +++++---- tests/test_merge_pic.py | 6 ++++++ 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8eb2bd0..34d8651 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,3 +19,4 @@ ## [0.3.2] - 增加NoTargetGroup +- 增加1x3拼图的支持 diff --git a/src/plugins/nonebot_hk_reporter/post.py b/src/plugins/nonebot_hk_reporter/post.py index e8ad59c..756151a 100644 --- a/src/plugins/nonebot_hk_reporter/post.py +++ b/src/plugins/nonebot_hk_reporter/post.py @@ -38,7 +38,7 @@ class Post: return abs(size[0] - size[1]) / size[0] < 0.01 async def _pic_merge(self) -> None: - if len(self.pics) < 6: + if len(self.pics) < 3: return first_image = await self._pic_url_to_image(self.pics[0]) if not self._check_image_square(first_image.size): @@ -77,9 +77,10 @@ class Post: images.extend(image_row) y_coord.append(y_coord[-1] + row_first_img.size[1]) return True - if not await process_row(1): - return - matrix = (3,2) + if await process_row(1): + matrix = (3,2) + else: + matrix = (3,1) if await process_row(2): matrix = (3,3) logger.info('trigger merge image') diff --git a/tests/test_merge_pic.py b/tests/test_merge_pic.py index 48a6141..b82a4d6 100644 --- a/tests/test_merge_pic.py +++ b/tests/test_merge_pic.py @@ -33,3 +33,9 @@ async def test_6_merge(plugin_module): post = plugin_module.post.Post('', '', '', pics=merge_source_9[0:6]+merge_source_9[9:]) await post._pic_merge() assert len(post.pics) == 5 + +@pytest.mark.asyncio +async def test_3_merge(plugin_module): + post = plugin_module.post.Post('', '', '', pics=merge_source_9[0:3]+merge_source_9[9:]) + await post._pic_merge() + assert len(post.pics) == 5