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

@ -11,7 +11,7 @@ protocol: torrent
supports:
- irc
- rss
source: custom
# source: custom
settings:
- name: passkey
type: secret
@ -58,12 +58,37 @@ irc:
parse:
type: single
lines:
- test:
- "(Games/PC) The.Smallest.Game-ze0s https://www.acid-lounge.org.uk/details.php?id=3443&hit=1"
- "(Music/MP3) TUNES_4_LYFE_WEB_iNT https://www.acid-lounge.org.uk/details.php?id=30104&hit=1"
- "(XXX/0-Day) Cute.Stuff.69.XXX.VR180.2700p.MP4-s0ez https://www.acid-lounge.org.uk/details.php?id=30444221135&hit=1"
- "(Movies/HD) Have.You.Seen.The.Cat.Tonight-WhereThat https://www.acid-lounge.org.uk/details.php?id=3018979898&hit=1"
- "(TV-HD/X264) The.Eggerton.S01E01.720p.WEB.h264-OTA https://www.acid-lounge.org.uk/details.php?id=302099&hit=1"
- tests:
- line: (Games/PC) The.Smallest.Game-ze0s https://www.acid-lounge.org.uk/details.php?id=3443&hit=1
expect:
category: Games/PC
torrentName: The.Smallest.Game-ze0s
baseUrl: https://www.acid-lounge.org.uk/
torrentId: "3443"
- line: (Music/MP3) TUNES_4_LYFE_WEB_iNT https://www.acid-lounge.org.uk/details.php?id=30104&hit=1
expect:
category: Music/MP3
torrentName: TUNES_4_LYFE_WEB_iNT
baseUrl: https://www.acid-lounge.org.uk/
torrentId: "30104"
- line: (XXX/0-Day) Cute.Stuff.69.XXX.VR180.2700p.MP4-s0ez https://www.acid-lounge.org.uk/details.php?id=30444221135&hit=1
expect:
category: XXX/0-Day
torrentName: Cute.Stuff.69.XXX.VR180.2700p.MP4-s0ez
baseUrl: https://www.acid-lounge.org.uk/
torrentId: "30444221135"
- line: (Movies/HD) Have.You.Seen.The.Cat.Tonight-WhereThat https://www.acid-lounge.org.uk/details.php?id=3018979898&hit=1
expect:
category: Movies/HD
torrentName: Have.You.Seen.The.Cat.Tonight-WhereThat
baseUrl: https://www.acid-lounge.org.uk/
torrentId: "3018979898"
- line: (TV-HD/X264) The.Eggerton.S01E01.720p.WEB.h264-OTA https://www.acid-lounge.org.uk/details.php?id=302099&hit=1
expect:
category: TV-HD/X264
torrentName: The.Eggerton.S01E01.720p.WEB.h264-OTA
baseUrl: https://www.acid-lounge.org.uk/
torrentId: "302099"
pattern: '\((.*)\) (.*) (https?\:\/\/[^\/]+\/).*id=(\d+)'
vars:
- category