automated tests
Closes #3581684
● All clean. 44 tests, 76 assertions, 0 errors, 0 PHPMD warnings.
Here's what was created:
Main module (dead_letter_queue/tests/src/Unit/Queue/)
- DeadLetterDatabaseQueueTest.php — 22 tests covering getMaxTries (config precedence, annotation fallback, default), schemaDefinition, numberOfItems (excludes dead letters, handles missing table), claimItem (normal claim, dead letter trigger + logging, handleDeadLetter call, DiscardDeadLetterException, RestoreDeadLetterException, missing plugin, concurrent update retry), releaseItem (decrements tries, handles missing table), resetItemTries
- DeadLetterQueueDatabaseFactoryTest.php — 2 tests covering instance type and uniqueness
Unique submodule (dead_letter_queue_unique/tests/src/Unit/Queue/)
- UniqueDeadLetterDatabaseQueueTest.php — 11 tests covering hash() (consistency, prefix, length, different names, different data), doCreateItem (success, duplicate rejection), schemaDefinition (hash field, unique key, inherits tries)
- UniqueDeadLetterQueueDatabaseFactoryTest.php — 1 test covering instance type
UI submodule (dead_letter_queue_ui/tests/src/Unit/Form/)
- ConfirmItemResetTriesFormTest.php — 3 tests covering form ID, NotFoundHttpException for non-DLQ queues, submit resets tries + shows message + redirects
- DeadLettersFormTest.php — 5 tests covering form ID, NotFoundHttpException, table headers, dead letter row rendering with operations dropbutton, pager element, empty message