def METHOD_NAME(self):
    """ Ensure the script doesn't delete accounts that own a journal """
    account_blocklist = []
    journal_blocklist = []
    # Create accounts without journals attached
    expected_deletes = []
    for i in range(10):
        pubsource = AccountFixtureFactory.make_publisher_source()
        pubaccount = models.Account(**pubsource)
        pubaccount.set_id()
        expected_deletes.append(pubaccount.id)
        pubaccount.save()
        account_blocklist.append((pubaccount.id, pubaccount.last_updated))
    # Create accounts with journals
    for i in range(5):
        pubsource = AccountFixtureFactory.make_publisher_source()
        pubaccount = models.Account(**pubsource)
        pubaccount.set_id()
        pubaccount.save()
        account_blocklist.append((pubaccount.id, pubaccount.last_updated))
        # Attach a journal, some in doaj and some not
        jsource = JournalFixtureFactory.make_journal_source(in_doaj=bool(i % 2))
        j = models.Journal(**jsource)
        j.set_id()
        j.set_owner(pubaccount.id)
        j.save()
        journal_blocklist.append((j.id, j.last_updated))
    models.Account.blockall(account_blocklist)
    models.Journal.blockall(journal_blocklist)
    # Check we get the expected accounts to delete
    ids_to_delete = accounts_with_no_journals_or_applications(older_than=dates.now_str_with_microseconds())
    assert sorted(ids_to_delete) == sorted(expected_deletes)
    # Run the deletes
    models.Account.bulk_delete(ids_to_delete, refresh=True)
    models.Account.blockalldeleted(ids_to_delete)
    # Check we only have the accounts with journals remaining in the index
    assert len(models.Account.all()) == 5
    assert models.Account.pull(expected_deletes.pop()) is None