ytdl-sub/tests
Jesse Bannon 9f408d2196
[FEATURE] Extend subscription syntax (#790)
Extends the subscription.yaml syntax at the cost of introducing a breaking change.

# New Syntax
## Mix-n-match presets and indent variables
```
# Can mix/match presets and indent override variables.
# Uses presets TV Show, Only Recent and assigns Kids, TV-Y to subscription_indent_1 and _2
TV Show | = Kids | = TV-Y | Only Recent:
  "Jake Trains": "https://..."
```

## Subscriptions with list-value support
```
TV Show | = Kids | = TV-Y | Only Recent:
  "Jake Trains":
    - "https://url.1..."  # Assigns to subscription_value and subscription_value_1
    - "https://url.2..."  # Assigns to subscription_value_2
```

## Subscriptions with override-keys support
```
TV Show | = Kids | = TV-Y | Only Recent:
  "~Jake Trains":  # the ~ means "all keys underneath get assigned as override variables"
    url: "https://url.1..."  # Assigns to url
    url2: "https://url.2..."  # Assigns to url2
```

# Breaking Changes
In the TV show subscriptions example (https://github.com/jmbannon/ytdl-sub/blob/master/examples/tv_show_subscriptions.yaml), it had
```
TV Show Full Archive:
  # Sets "Kids" for genre, "TV-Y" for content rating
  = Kids | TV-Y:
    "Jake Trains": "https://www.youtube.com/@JakeTrains"
    "Kids Toys Play": "https://www.youtube.com/@KidsToysPlayChannel"
```
This must be changed to
```
TV Show Full Archive:
  # Sets "Kids" for genre, "TV-Y" for content rating
  = Kids | = TV-Y:  # Each indent variable assignment must have an = before it
    "Jake Trains": "https://www.youtube.com/@JakeTrains"
    "Kids Toys Play": "https://www.youtube.com/@KidsToysPlayChannel"
```
2023-11-01 20:24:06 -07:00
..
e2e [FEATURE] Prebuilt Music Videos (#787) 2023-10-28 00:12:22 -07:00
resources [FEATURE] Prebuilt Music Videos (#787) 2023-10-28 00:12:22 -07:00
unit [FEATURE] Extend subscription syntax (#790) 2023-11-01 20:24:06 -07:00
__init__.py Add channel as kodi tv show e2e test (#15) 2022-04-29 11:09:32 -07:00
conftest.py [FEATURE] Prebuilt Music Videos (#787) 2023-10-28 00:12:22 -07:00
expected_download.py [DEV] Do not hash .info.json files in expected download summaries (#752) 2023-10-03 13:22:19 -07:00
expected_transaction_log.py [FEATURE] Ability to migrate download archive files (#751) 2023-10-03 16:08:14 -07:00
resources.py [BACKEND] Windows support (#476) 2023-02-28 17:07:03 -08:00