feat(definitions): add expectations for test lines (#1257)

* factor out test helpers

* refactor, add tests for animebytes

* revert test refactor

* better name

* change format, migrate some examples

* migrated remaining test cases

* add comment about `Test` vs `Tests`

* refactor

* reorder expectations to match vars

* generate

* turn on strict unmarshalling, remove old `Test` from schema

* start modifying actual definitions

* done with the As

* Bs

* C, D

* E, F

* G, H, I, ... L

* M, N

* O, P

* R

* bonus error. without this, pattern/vars disagreement can panic.

* S

* T, U

* X.. Now we know our ABCs next time won't you sing with meeeee

* fix another test

* another driveby change

* be less strict parsing custom definitions

* fix(definitions): load custom definitions

---------

Co-authored-by: ze0s <ze0s@riseup.net>
This commit is contained in:
Frederick Robinson 2023-11-18 06:41:39 -08:00 committed by GitHub
parent e842a7bd42
commit fef0da5711
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
83 changed files with 1887 additions and 565 deletions

View file

@ -10,7 +10,7 @@ privacy: private
protocol: torrent
supports:
- irc
source: gazelle
# source: gazelle
settings:
- name: torrent_pass
type: secret
@ -44,10 +44,28 @@ irc:
parse:
type: single
lines:
- test:
- "Torrent Name Here - https://bemaniso.ws/torrents.php?id=00000 / https://bemaniso.ws/torrents.php?action=download&id=00001 - ps2, ddr"
- "Big Vs. 2 Small - https://bemaniso.ws/torrents.php?id=00000 / https://bemaniso.ws/torrents.php?action=download&id=00001 - arcade, gundam, exvs"
- "Cool title [2000] [DJ Mix] - FLAC / Lossless / Log / 100% / Cue / CD - https://bemaniso.ws/torrents.php?id=00000 / https://bemaniso.ws/torrents.php?action=download&id=00001 - eurobeat"
- tests:
- line: Torrent Name Here - https://bemaniso.ws/torrents.php?id=00000 / https://bemaniso.ws/torrents.php?action=download&id=00001 - ps2, ddr
expect:
torrentName: Torrent Name Here
releaseTags: '-'
torrentInfoId: "00000"
torrentId: "00001"
tags: ps2, ddr
- line: Big Vs. 2 Small - https://bemaniso.ws/torrents.php?id=00000 / https://bemaniso.ws/torrents.php?action=download&id=00001 - arcade, gundam, exvs
expect:
torrentName: Big Vs. 2 Small
releaseTags: '-'
torrentInfoId: "00000"
torrentId: "00001"
tags: arcade, gundam, exvs
- line: Cool title [2000] [DJ Mix] - FLAC / Lossless / Log / 100% / Cue / CD - https://bemaniso.ws/torrents.php?id=00000 / https://bemaniso.ws/torrents.php?action=download&id=00001 - eurobeat
expect:
torrentName: Cool title [2000] [DJ Mix]
releaseTags: FLAC / Lossless / Log / 100% / Cue / CD -
torrentInfoId: "00000"
torrentId: "00001"
tags: eurobeat
pattern: '(.*) -? (.*) (?:.*id=(\d+)) / (?:.*id=(\d+)) - (.*)'
vars:
- torrentName