autobrr/internal/indexer/definitions/superbits.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

84 lines
2.2 KiB
YAML

---
#id: superbits
name: SuperBits
identifier: superbits
description: Superbits is a SWEDISH private torrent tracker for MOVIES / TV / 0DAY / GENERAL
language: en-us
urls:
- https://superbits.org/
privacy: private
protocol: torrent
supports:
- irc
- rss
# source: rartracker
settings:
- name: passkey
type: secret
required: true
label: Passkey
help: "Copy the passkey from the /rss page."
irc:
network: SuperBits
server: irc.superbits.org
port: 6697
tls: true
channels:
- "#autodl"
announcers:
- SuperBits
settings:
- name: nick
type: text
required: true
label: Nick
help: Bot nick. Eg. user-bot
- 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
parse:
type: single
lines:
- tests:
- line: '-[archive Film 1080]2[A.Movie.1985.FRENCH.1080p.BluRay.x264-GROUP]3[000000]4[Size: 4.41 GB]5[FL: no]6[Scene: yes]'
expect:
category: archive Film 1080
torrentName: A.Movie.1985.FRENCH.1080p.BluRay.x264-GROUP
torrentId: "000000"
torrentSize: 4.41 GB
freeleech: "no"
scene: "yes"
preTime: ""
- line: '-[new TV]2[Some.Show.S05E05.720p.WEB.h264-GROUP]3[000000]4[Size: 964.04 MB]5[FL: no]6[Scene: yes]7[Pred 1m 30s ago]'
expect:
category: new TV
torrentName: Some.Show.S05E05.720p.WEB.h264-GROUP
torrentId: "000000"
torrentSize: 964.04 MB
freeleech: "no"
scene: "yes"
preTime: 1m 30s
pattern: '\-\[(.*)\]2\[(.*)\]3\[(\d+)\]4\[Size\:\s(.*)\]5\[FL\:\s(no|yes)\]6\[Scene\:\s(no|yes)\](?:7\[Pred\s(.*)\sago\])?'
vars:
- category
- torrentName
- torrentId
- torrentSize
- freeleech
- scene
- preTime
match:
infourl: "/torrent/{{ .torrentId }}/"
torrenturl: "/download.php?id={{ .torrentId }}&passkey={{ .passkey }}"