Remove unused code from Bookmark model

Description

There are a number of functions in app/models/bookmark.rb that were originally used to calculate information about the bookmarkable for use in indexing/search. But now that bookmark search uses BookmarkedWorkIndexer, BookmarkedExternalWorkIndexer, and BookmarkedSeriesIndexer to index information about the bookmarkables, those functions are unused.

The following functions have information about the bookmarkable alone:

  • bookmarkable_pseud_names

  • bookmarkable_pseud_ids

  • bookmarkable_collection_ids

  • bookmarkable_title

  • bookmarkable_posted

  • bookmarkable_restricted

  • bookmarkable_hidden

  • bookmarkable_complete

  • bookmarkable_language_id

(Note that bookmarkable_date should not be deleted, because it's still used by the BookmarkIndexer.)

In addition, the following functions were formerly used to calculate information about the bookmark's tags and the bookmarkable's tags:

  • tag

  • tag_ids

  • filters

  • filters_for_facets

  • filter_names

  • filter_ids

  • fandom_ids

  • character_ids

  • relationship_ids

  • freeform_ids

  • rating_ids

  • warning_ids

  • category_ids

All of these functions are currently unused, and should be deleted (to improve code coverage and make it easier to follow the flow of control in the parts of the class that are being used).

Testing Instructions: As long as the PR passes automated tests, I'm not sure any manual testing is required. (Since these functions were only used in indexing, the indexing in the automated tests would fail if any critical functions were missing.) But if you wanted to be thorough, you could try creating a bookmark on a brand new work and ensure it can be found with bookmark search.

Activity

Show:
Sarken
April 4, 2019, 10:41 AM

I posted a work and then bookmarked it. I gave it a quick, not even remotely thorough (because as the issue points out, we don’t really need it) poke with tests and can confirm that the bookmark showed up in bookmark search when I put “sarken” in “Any field on work” and “Testing” (the fandom on said work) in “Tags”

redsummernight
April 9, 2019, 1:13 PM

Tried:

  • Bookmark a work, a series, an external work

  • Find them in my user's bookmark listing

    • Include/exclude by fandom, by a bookmarker's tag

    • Filter only recs

    • Filter only those with notes

  • Search bookmarks:

    • Find by bookmarker (me!), only public bookmarks appear

    • Find by (bookmarkable) type

    • Find by notes

Looks good.

Lady Oscar
April 10, 2019, 3:36 PM

Looks good!

DeployedToBeta

Assignee

ticking instant

Reporter

ticking instant

Roadmap

Bookmarks

Priority

Low

Affects versions

Fix versions

Components

BackEnd

Difficulty

Easy

Milestone

Internal 0.9