Commit Graph

387 Commits

Author SHA1 Message Date
Claudio Ortolina f86800368d Streamline test suite
record_set_live/index_test.exs — Removed 3 describe blocks ("Delete set", "Remove record from set", "Drag-and-drop reorder") that were duplicated in ShowTest. Removed 3 tests.

record_set_live/show_test.exs — Replaced context-level assertion in "Remove record" with UI assertion (refute has_element?). Removed redundant assert_raise from "Delete set" (kept assert_redirect).

scrobble_rules_live/index_test.exs — Removed "Form validation" describe block (2 tests duplicated in "saves new scrobble_rule" and changeset tests). Kept the "updates form labels" test, moved into "Index"
  block. Replaced ScrobbleRules.get_scrobble_rule! assertions in toggle test with UI assertions checking button text.
online_store_template_live/index_test.exs — Replaced context-level assertions with UI assertions in Create, Edit, Delete, and Toggle tests. Removed OnlineStoreTemplates alias.

scrobbled_tracks_live/index_test.exs — Collapsed 3 search tests into 1. Removed 2 tests.
2026-03-09 18:55:07 +00:00
Claudio Ortolina c352ad4809 Can print an individual medium tracklist 2026-03-09 14:52:26 +00:00
Claudio Ortolina 4c6baa6e13 Improve printout PDF layout
Support multiple columns in case the tracklist is long, or there's
multiple media.
2026-03-09 14:44:28 +00:00
Claudio Ortolina 4569c6727e Add function to download a record's tracklist for printing 2026-03-09 13:39:12 +00:00
Claudio Ortolina 1bc01a2346 Fix flaky collection live index test 2026-03-09 13:38:24 +00:00
Claudio Ortolina 4584b7bcb8 Remove drop down from record set items
Have just a bin icon, and rely on drag and drop.

This solves a massive performance issue with the page, which is
traceable to the Fluxon dropdowns, particularly the Class.merge logic
used to merge Tailwind classes
2026-03-08 13:21:33 +00:00
Claudio Ortolina 52815bde2f When doing markdown to HTML, sanitize HTML
Closes #101
Closes #102
2026-03-07 19:05:37 +00:00
Claudio Ortolina f75485e5db Small optimizations to speed up the test suite
Shaves off 1 second on M1
2026-03-07 09:13:02 +00:00
Claudio Ortolina 6a89d31d4c Don't extract dominant colors if provided in params
This as the side effect of massively speeding up the test suite: on M1,
it goes from 24 seconds to 14.
2026-03-07 09:05:44 +00:00
Claudio Ortolina a23f772c04 Re-enable Credo CyclomaticComplexity check 2026-03-06 10:08:25 +00:00
Claudio Ortolina 54f19cd9a2 Fix ArtistInfo.country/1 crash when area is missing 2026-03-06 09:51:56 +00:00
Claudio Ortolina f9b381570f Extract artist infos fixtures 2026-03-06 08:58:59 +00:00
Claudio Ortolina 3819afca4d Extract fixture 2026-03-06 08:53:25 +00:00
Claudio Ortolina c3cb510892 Convert phoenix_test assertions to simplified syntax 2026-03-06 06:41:06 +00:00
Claudio Ortolina 08f7565d44 Replace inspect(reason) with friendly error messages
Closes #81
2026-03-05 20:25:13 +00:00
Claudio Ortolina d4376e5fa0 Extract DB queries from MaintenanceLive into context 2026-03-05 18:01:50 +00:00
Claudio Ortolina 4b1f6bb245 Fix inconsistent toast arity in form components
Closes #94
2026-03-05 17:06:23 +00:00
Claudio Ortolina 42a51b9539 Add test coverage for ScrobbleLive Index and Show 2026-03-05 14:52:58 +00:00
Claudio Ortolina fb7ccad6f9 Add meaningful tests for ArtistChat and RecordChat
Closes #96
2026-03-05 14:43:50 +00:00
Claudio Ortolina f109057be5 Persist telemetry data in local sqlite database 2026-03-05 13:39:38 +00:00
Claudio Ortolina 478832249b Send record of the day email 2026-03-05 10:37:04 +00:00
Claudio Ortolina 3671250cee Update redirect test to account for Cloudflare proxying 2026-03-05 06:57:43 +00:00
Claudio Ortolina 9f0579bafd Prod test for scanners 2026-03-05 06:56:21 +00:00
Claudio Ortolina c831b20317 Move error tracker notifier files to correct namespace 2026-03-04 19:39:36 +00:00
Claudio Ortolina ad9bcd8481 Inline error tracker notification code
As we don't need the Discord functionality which brings quite a lot of
extra libraries/code
2026-03-04 17:19:14 +00:00
Claudio Ortolina 7ec3e68e58 Relax assertions on colors
As dominant colors are not stable on different environments
2026-03-03 16:13:23 +00:00
Claudio Ortolina 6d451481b7 Remove obsolete color extraction strategies 2026-03-03 16:01:25 +00:00
Claudio Ortolina de14ec3e25 Consolidate completely stateless tests into doctests
Removing dupes
2026-03-03 11:30:52 +00:00
Claudio Ortolina 6ef5f0a000 Add metrics to rate limiter 2026-03-02 19:23:27 +00:00
Claudio Ortolina 195917d0f9 Increase tolerances to avoid spurious failures 2026-03-02 15:29:57 +00:00
Claudio Ortolina a992c1f0dd Introduce a Req.RateLimiter module to fix API rate limit issues 2026-03-02 15:04:45 +00:00
Claudio Ortolina 99674eb8bc Refactor and add tests for OpenAI namespace 2026-03-02 14:11:51 +00:00
Claudio Ortolina a0df11d26f Use new style for MB link and copy button in artist page 2026-03-01 20:19:46 +00:00
Claudio Ortolina 854e293902 Add large battery of tests, primarily workers 2026-03-01 17:03:36 +00:00
Claudio Ortolina 84323e5732 Capture logs to avoid useless test log noise 2026-03-01 08:56:42 +00:00
Claudio Ortolina b35f4aed1d EXP: enrich artist info data via Last.fm and produce better embeddings 2026-03-01 08:22:35 +00:00
Claudio Ortolina 871f4b3554 Extract ListeningStats out of ScrobbleActivity 2026-02-27 12:16:38 +00:00
Claudio Ortolina bfbb74d601 BETA: new layout for record details page 2026-02-26 08:49:40 +00:00
Claudio Ortolina 16e0bf03a9 Remove Flagmojis dependency 2026-02-24 08:58:49 +00:00
Claudio Ortolina 8eaaa3cfec Use custom country module to resolve flags more accurately
Ported from https://github.com/wojtekmaj/country-code-to-flag-emoji
(MIT)
2026-02-24 08:57:30 +00:00
Claudio Ortolina 1dfb2d2a6f Use Wikipedia data for record similarity and raise similarity threshold 2026-02-19 15:51:12 +00:00
Claudio Ortolina 3079ebdd02 Remove obsolete Obsidian import logic 2026-02-18 22:08:47 +00:00
Copilot 2faddbf0c6 Add audit tooling for scrobbled tracks data quality (#89) 2026-02-17 11:24:45 +00:00
Claudio Ortolina c7285a2f80 Move more fixtures to compile time 2026-02-16 10:30:14 +00:00
Claudio Ortolina 2f7e2caa3c Cache fixtures 2026-02-16 09:50:10 +00:00
Claudio Ortolina 583789850c Normalize top artist and top album counts
- Make sure joins don't discard tracks
- Make sure we group by names as MB ids can be empty
2026-02-15 20:35:23 +00:00
Claudio Ortolina 23d6e736e7 Uniform ux/ui of adding a new record to a set 2026-02-15 14:24:02 +00:00
Claudio Ortolina 445033861d Reuse fixture 2026-02-10 19:32:28 +00:00
Claudio Ortolina fe748782c7 Reorder record sets via drag and drop 2026-02-10 11:16:41 +00:00
Claudio Ortolina 4b03102aa7 Display size for image search previews 2026-02-09 19:02:12 +00:00