autobrr/internal/indexer/definitions/pixelhd.yaml
Frederick Robinson fef0da5711
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>
2023-11-18 15:41:39 +01:00

104 lines
2.5 KiB
YAML

---
#id: pixelhd
name: PixelHD
identifier: pixelhd
description: PixelHD is a specialty movie site. Ratio free.
language: en-us
urls:
- https://pixelhd.me/
privacy: private
protocol: torrent
supports:
- irc
- rss
# source: subLiME
settings:
- name: authkey
type: secret
required: true
label: Auth key
help: Right click DL on a torrent and get the authkey.
- name: torrent_pass
type: secret
required: true
label: Torrent pass
help: Right click DL on a torrent and get the torrent_pass.
irc:
network: PixelHD
server: irc.pixelhd.me
port: 6667
tls: false
channels:
- "#pixelhd-announce"
announcers:
- LiMEY_
settings:
- name: nick
type: text
required: true
label: Nick
help: Bot nick. Eg. user-autodl
- name: auth.account
type: text
required: false
label: NickServ Account
help: NickServ account. Make sure to group your user and bot.
- name: auth.password
type: secret
required: false
label: NickServ Password
help: NickServ password
- name: invite_command
type: secret
default: "LiMEY_ !invite IRCKEY SITEUSERNAME"
required: true
label: Invite command
help: Invite auth with LiMEY_. Replace IRCKEY and SITEUSERNAME.
parse:
type: multi
lines:
- tests:
- line: "New torrent uploaded!"
expect: {}
pattern: '^New torrent uploaded!$'
ignore: true
- tests:
- line: 'Title: Dragons Forever | Year: 1988 | URL: https://pixelhd.me/torrents.php?torrentid=23001'
expect:
torrentName: Dragons Forever
year: "1988"
baseUrl: https://pixelhd.me/
torrentId: "23001"
pattern: 'Title: (.*) \| Year: (.*) \| URL: (https?:\/\/.*\/).+id=(.+)'
vars:
- torrentName
- year
- baseUrl
- torrentId
- tests:
- line: 'Uploader: Anon | Release Group: Px4K | Format: MP4 | Genre(s): action,comedy,romance'
expect:
uploader: Anon
releaseGroup: Px4K
container: MP4
tags: action,comedy,romance
pattern: 'Uploader: (.*) \| Release Group: (.*) \| Format: (.*) \| Genre\(s\): (.*)'
vars:
- uploader
- releaseGroup
- container
- tags
match:
infourl: "/torrents.php?torrentid={{ .torrentId }}"
torrenturl: "/torrents.php?action=download&id={{ .torrentId }}&authkey={{ .authkey }}&torrent_pass={{ .torrent_pass }}"