Found this while handling MDL-65803.
There is a discrepancy between how the course_delete_module and remove_course_contents functions behave, specifically when the latter handles deletion of course modules. For instance, if you call 'delete_course' which calls 'remove_course_contents', it doesn't trigger the 'pre_course_module_delete' callback
Steps to reproduce:
- Debug the updated unit test 'test_get_recent_items' from the related issue
- Put a breakpoint in the 'block_recentlyaccesseditems_pre_course_module_delete'
- Confirm the breakpoint doesn't get hit