- Move them to the correct class. They were exercising filter matching,
not parsing.
- Remove a bunch of unreadable tuple stuff that was mostly obfuscating
the readability without actually improving test coverage.
- Make tests fail everywhere rather than on CI only. They were failing
because they were written in a way that was implicitly dependent on
the local computer's timezone.
This always confuses me since stable used this for the main storage
location of the icon. We don't reference this anywhere so it's just
weird to still keep this around.
Of note, this has a lazer icon from many years ago still inside it.
This was not fatal but with this change it should recover in a slightly
better way.
Also incidentally fixes the cache refetch potentially being attempted
twice by each of the two background population tasks that use it.
`EqualityComparer<object>.Default()` will be slow, will fall back to
`object.Equals()` which may do the right thing, the wrong thing, or be
useless due to using reference equality semantics.
In practice in this call site it likely doesn't matter anyway but I'd
rather be future-proof than not.