diff options
| author | anatawa12 <anatawa12@icloud.com> | 2025-08-15 22:39:55 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-08-15 22:39:55 +0900 |
| commit | 60f7278aff27b9a0e03c1f1a2a77663cfb0e0ddb (patch) | |
| tree | 76d9f4e99144879566c5d39da7de7bd7f11a7668 /packages/backend/test/unit/queue/processors | |
| parent | enhance(frontend): improve enableInfiniteScroll stability (diff) | |
| download | misskey-60f7278aff27b9a0e03c1f1a2a77663cfb0e0ddb.tar.gz misskey-60f7278aff27b9a0e03c1f1a2a77663cfb0e0ddb.tar.bz2 misskey-60f7278aff27b9a0e03c1f1a2a77663cfb0e0ddb.zip | |
fix: Remote Note Cleaning will delete notes embedded in a page (#16408)
* feat: preserve number of pages referencing the note
* chore: delete pages on account delete
* fix: notes on the pages are removed by CleanRemoteNotes
* test: add the simplest test for page embedded notes
* fix: section block is not considered
* fix: section block is not considered in migration
* chore: remove comments from columns
* revert unnecessary change
* add pageCount to webhook test
* fix type error on backend
Diffstat (limited to 'packages/backend/test/unit/queue/processors')
| -rw-r--r-- | packages/backend/test/unit/queue/processors/CleanRemoteNotesProcessorService.ts | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/packages/backend/test/unit/queue/processors/CleanRemoteNotesProcessorService.ts b/packages/backend/test/unit/queue/processors/CleanRemoteNotesProcessorService.ts index 597d6b90cd..631e160afc 100644 --- a/packages/backend/test/unit/queue/processors/CleanRemoteNotesProcessorService.ts +++ b/packages/backend/test/unit/queue/processors/CleanRemoteNotesProcessorService.ts @@ -281,6 +281,24 @@ describe('CleanRemoteNotesProcessorService', () => { expect(remainingNote).not.toBeNull(); }); + // ページ + test('should not delete note that is embedded in a page', async () => { + const job = createMockJob(); + + // Create old remote note that is embedded in a page + const clippedNote = await createNote({ + pageCount: 1, // Embedded in a page + }, bob, Date.now() - ms(`${meta.remoteNotesCleaningExpiryDaysForEachNotes} days`) - 1000); + + const result = await service.process(job as any); + + expect(result.deletedCount).toBe(0); + expect(result.skipped).toBe(false); + + const remainingNote = await notesRepository.findOneBy({ id: clippedNote.id }); + expect(remainingNote).not.toBeNull(); + }); + // 古いreply, renoteが含まれている時の挙動 test('should handle reply/renote relationships correctly', async () => { const job = createMockJob(); |