Compare commits
4 commits
9e574d733d
...
d38a1366e7
Author | SHA1 | Date | |
---|---|---|---|
d38a1366e7 | |||
9ecf7eff74 | |||
11fe9a5fa1 | |||
8f0e146839 |
17 changed files with 346 additions and 27 deletions
|
@ -33,7 +33,7 @@ quick-js-dtp = { version = "0.4.1", default-features = false, features = [
|
|||
] }
|
||||
once_cell = "1.12.0"
|
||||
regex = "1.6.0"
|
||||
fancy-regex = "0.12.0"
|
||||
fancy-regex = "0.13.0"
|
||||
thiserror = "1.0.36"
|
||||
url = "2.2.2"
|
||||
reqwest = { version = "0.11.11", default-features = false, features = [
|
||||
|
|
|
@ -529,7 +529,7 @@ fn map_channel_content(
|
|||
.content
|
||||
.section_list_renderer
|
||||
.as_ref()
|
||||
.and_then(|c| c.contents.c.get(0))
|
||||
.and_then(|c| c.contents.c.first())
|
||||
{
|
||||
return Err(ExtractionError::Unavailable {
|
||||
reason: crate::error::UnavailabilityReason::AgeRestricted,
|
||||
|
|
|
@ -327,7 +327,7 @@ impl MapResponse<MusicAlbum> for response::MusicPlaylist {
|
|||
let year_txt = subtitle_split
|
||||
.swap_remove(2)
|
||||
.0
|
||||
.get(0)
|
||||
.first()
|
||||
.map(|c| c.as_str().to_owned());
|
||||
(year_txt, subtitle_split.try_swap_remove(1))
|
||||
}
|
||||
|
|
|
@ -335,12 +335,14 @@ impl From<Thumbnails> for Vec<crate::model::Thumbnail> {
|
|||
|
||||
impl From<Vec<ChannelBadge>> for crate::model::Verification {
|
||||
fn from(badges: Vec<ChannelBadge>) -> Self {
|
||||
badges.get(0).map_or(crate::model::Verification::None, |b| {
|
||||
match b.metadata_badge_renderer.style {
|
||||
ChannelBadgeStyle::BadgeStyleTypeVerified => Self::Verified,
|
||||
ChannelBadgeStyle::BadgeStyleTypeVerifiedArtist => Self::Artist,
|
||||
}
|
||||
})
|
||||
badges
|
||||
.first()
|
||||
.map_or(crate::model::Verification::None, |b| {
|
||||
match b.metadata_badge_renderer.style {
|
||||
ChannelBadgeStyle::BadgeStyleTypeVerified => Self::Verified,
|
||||
ChannelBadgeStyle::BadgeStyleTypeVerifiedArtist => Self::Artist,
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
#![allow(
|
||||
clippy::doc_markdown,
|
||||
clippy::similar_names,
|
||||
clippy::struct_field_names,
|
||||
clippy::items_after_statements,
|
||||
clippy::too_many_lines,
|
||||
clippy::module_name_repetitions,
|
||||
|
|
|
@ -63,11 +63,11 @@ MusicAlbum(
|
|||
cover: [],
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
id: Some("UCUhWwvF6gIPWTYlYb4-icLA"),
|
||||
name: "L.r. Eswari",
|
||||
),
|
||||
],
|
||||
artist_id: None,
|
||||
artist_id: Some("UCUhWwvF6gIPWTYlYb4-icLA"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_bqWA6mAZFWS",
|
||||
name: "Pedha Rasi Peddamma Katha",
|
||||
|
|
|
@ -63,11 +63,11 @@ MusicAlbum(
|
|||
cover: [],
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
id: Some("UCUhWwvF6gIPWTYlYb4-icLA"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: None,
|
||||
artist_id: Some("UCUhWwvF6gIPWTYlYb4-icLA"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_bqWA6mAZFWS",
|
||||
name: "[name]",
|
||||
|
|
|
@ -29,6 +29,14 @@ MusicAlbum(
|
|||
id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
name: "Demi Lovato",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCKqVP7_535ELJu2OeEd3zzQ"),
|
||||
name: "Missy Elliott",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCStR3TnjvL7CL8ZNFPKmRXw"),
|
||||
name: "Timbaland",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -50,6 +58,10 @@ MusicAlbum(
|
|||
id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
name: "Demi Lovato",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UC58M_VmdxEw-h-p_HgeE0Zg"),
|
||||
name: "Dev",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -71,6 +83,10 @@ MusicAlbum(
|
|||
id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
name: "Demi Lovato",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UC0tIFKS5uijPeJLjH8uAWJg"),
|
||||
name: "Iyaz",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -92,6 +108,10 @@ MusicAlbum(
|
|||
id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
name: "Demi Lovato",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCA7oqkXUZIlT8QXhxaIR4RA"),
|
||||
name: "Jason Derulo",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
album: Some(AlbumId(
|
||||
|
|
|
@ -29,6 +29,14 @@ MusicAlbum(
|
|||
id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCKqVP7_535ELJu2OeEd3zzQ"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCStR3TnjvL7CL8ZNFPKmRXw"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -50,6 +58,10 @@ MusicAlbum(
|
|||
id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UC58M_VmdxEw-h-p_HgeE0Zg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -71,6 +83,10 @@ MusicAlbum(
|
|||
id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UC0tIFKS5uijPeJLjH8uAWJg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -92,6 +108,10 @@ MusicAlbum(
|
|||
id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCA7oqkXUZIlT8QXhxaIR4RA"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCwem2sj-QUJCiWiPAo9JuAw"),
|
||||
album: Some(AlbumId(
|
||||
|
|
|
@ -12,6 +12,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
description: None,
|
||||
|
@ -29,6 +33,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -50,6 +58,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -71,6 +83,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -92,6 +108,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -113,6 +133,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -134,6 +158,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -155,6 +183,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -176,6 +208,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -197,6 +233,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -218,6 +258,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -239,6 +283,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -260,6 +308,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -281,6 +333,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -302,6 +358,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -323,6 +383,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -344,6 +408,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -365,6 +433,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -386,6 +458,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -407,6 +483,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -428,6 +508,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -449,6 +533,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -470,6 +558,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -491,6 +583,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -512,6 +608,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -533,6 +633,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -554,6 +658,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -575,6 +683,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "Dimiter Inkiow",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "Griechische Mythologie für Kinder",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
|
|
@ -12,6 +12,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
description: "[description]",
|
||||
|
@ -29,6 +33,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -50,6 +58,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -71,6 +83,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -92,6 +108,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -113,6 +133,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -134,6 +158,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -155,6 +183,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -176,6 +208,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -197,6 +233,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -218,6 +258,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -239,6 +283,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -260,6 +308,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -281,6 +333,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -302,6 +358,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -323,6 +383,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -344,6 +408,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -365,6 +433,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -386,6 +458,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -407,6 +483,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -428,6 +508,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -449,6 +533,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -470,6 +558,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -491,6 +583,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -512,6 +608,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -533,6 +633,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -554,6 +658,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
@ -575,6 +683,10 @@ MusicAlbum(
|
|||
id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCsg6xTDzVnvrcWhgLYX6_rg"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCAotr_lJ3JJ79DPRlA7k47w"),
|
||||
album: Some(AlbumId(
|
||||
|
|
|
@ -7,12 +7,25 @@ MusicAlbum(
|
|||
playlist_id: Some("OLAK5uy_mux5ygfN9sbiR1ma3yh1GHTmqNekZNoAI"),
|
||||
name: "13 Reasons Why (Season 3)",
|
||||
cover: "[cover]",
|
||||
artists: [],
|
||||
artist_id: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: Some("UCCj0RlDqqahEB5BXVtDcPqg"),
|
||||
name: "5 Seconds of Summer",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCMrCoizKiBxqeg5pTpBXn1A"),
|
||||
name: "YUNGBLUD",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCvsgN5NKOzXnAURfaf3TOig"),
|
||||
name: "Alexander 23",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCCj0RlDqqahEB5BXVtDcPqg"),
|
||||
description: None,
|
||||
album_type: Album,
|
||||
year: Some(2019),
|
||||
by_va: true,
|
||||
by_va: false,
|
||||
tracks: [
|
||||
TrackItem(
|
||||
id: "R3VIKRtzAdE",
|
||||
|
@ -251,12 +264,16 @@ MusicAlbum(
|
|||
duration: Some(246),
|
||||
cover: [],
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: Some("UCRBHsrbsZDxjHkcgMKEJwpw"),
|
||||
name: "Brendan Angelides",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UC4YvDAbE1EYwZpj6gQ-lpLw"),
|
||||
name: "Eskmo",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UC4YvDAbE1EYwZpj6gQ-lpLw"),
|
||||
artist_id: Some("UCRBHsrbsZDxjHkcgMKEJwpw"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_AzuWg8qAVVl",
|
||||
name: "13 Reasons Why (Season 3)",
|
||||
|
|
|
@ -7,12 +7,25 @@ MusicAlbum(
|
|||
playlist_id: Some("OLAK5uy_mux5ygfN9sbiR1ma3yh1GHTmqNekZNoAI"),
|
||||
name: "[name]",
|
||||
cover: "[cover]",
|
||||
artists: [],
|
||||
artist_id: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: Some("UCCj0RlDqqahEB5BXVtDcPqg"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCMrCoizKiBxqeg5pTpBXn1A"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UCvsgN5NKOzXnAURfaf3TOig"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCCj0RlDqqahEB5BXVtDcPqg"),
|
||||
description: "[description]",
|
||||
album_type: Album,
|
||||
year: Some(2019),
|
||||
by_va: true,
|
||||
by_va: false,
|
||||
tracks: [
|
||||
TrackItem(
|
||||
id: "R3VIKRtzAdE",
|
||||
|
@ -251,12 +264,16 @@ MusicAlbum(
|
|||
duration: Some(246),
|
||||
cover: [],
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: Some("UCRBHsrbsZDxjHkcgMKEJwpw"),
|
||||
name: "[name]",
|
||||
),
|
||||
ArtistId(
|
||||
id: Some("UC4YvDAbE1EYwZpj6gQ-lpLw"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UC4YvDAbE1EYwZpj6gQ-lpLw"),
|
||||
artist_id: Some("UCRBHsrbsZDxjHkcgMKEJwpw"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_AzuWg8qAVVl",
|
||||
name: "[name]",
|
||||
|
|
|
@ -105,11 +105,11 @@ MusicAlbum(
|
|||
cover: [],
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
id: Some("UCa4ZqZPRjz9MYYnfpoh2few"),
|
||||
name: "LOONA",
|
||||
),
|
||||
],
|
||||
artist_id: None,
|
||||
artist_id: Some("UCa4ZqZPRjz9MYYnfpoh2few"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
|
|
|
@ -105,11 +105,11 @@ MusicAlbum(
|
|||
cover: [],
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
id: Some("UCa4ZqZPRjz9MYYnfpoh2few"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: None,
|
||||
artist_id: Some("UCa4ZqZPRjz9MYYnfpoh2few"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "[name]",
|
||||
|
|
|
@ -146,6 +146,21 @@ MusicArtist(
|
|||
year: Some(2015),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_ghrNI6BJSM8",
|
||||
name: "[name]",
|
||||
cover: "[cover]",
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: Some("UCFKUUtHjT4iq3p0JJA13SOA"),
|
||||
name: "[name]",
|
||||
),
|
||||
],
|
||||
artist_id: Some("UCFKUUtHjT4iq3p0JJA13SOA"),
|
||||
album_type: Album,
|
||||
year: Some(2017),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_h0UZr2ALQXf",
|
||||
name: "[name]",
|
||||
|
|
|
@ -827,6 +827,7 @@ fn channel_videos(rp: RustyPipe) {
|
|||
}
|
||||
|
||||
#[rstest]
|
||||
#[ignore]
|
||||
fn channel_shorts(rp: RustyPipe) {
|
||||
let channel = tokio_test::block_on(
|
||||
rp.query()
|
||||
|
@ -1006,8 +1007,9 @@ fn channel_more(
|
|||
|
||||
#[rstest]
|
||||
#[case::videos("UCcdwLMPsaU2ezNSJU1nFoBQ", ChannelVideoTab::Videos)]
|
||||
#[case::shorts("UCcdwLMPsaU2ezNSJU1nFoBQ", ChannelVideoTab::Shorts)]
|
||||
#[case::live("UCvqRdlKsE5Q8mf8YXbdIJLw", ChannelVideoTab::Live)]
|
||||
#[ignore]
|
||||
#[case::shorts("UCcdwLMPsaU2ezNSJU1nFoBQ", ChannelVideoTab::Shorts)]
|
||||
fn channel_order_latest(#[case] id: &str, #[case] tab: ChannelVideoTab, rp: RustyPipe) {
|
||||
let latest = tokio_test::block_on(rp.query().channel_videos_tab_order(
|
||||
id,
|
||||
|
@ -1033,8 +1035,9 @@ fn channel_order_latest(#[case] id: &str, #[case] tab: ChannelVideoTab, rp: Rust
|
|||
|
||||
#[rstest]
|
||||
#[case::videos("UCcdwLMPsaU2ezNSJU1nFoBQ", ChannelVideoTab::Videos, "XqZsoesa55w")]
|
||||
#[case::shorts("UCcdwLMPsaU2ezNSJU1nFoBQ", ChannelVideoTab::Shorts, "k91vRvXGwHs")]
|
||||
#[case::live("UCvqRdlKsE5Q8mf8YXbdIJLw", ChannelVideoTab::Live, "ojes5ULOqhc")]
|
||||
#[ignore]
|
||||
#[case::shorts("UCcdwLMPsaU2ezNSJU1nFoBQ", ChannelVideoTab::Shorts, "k91vRvXGwHs")]
|
||||
fn channel_order_popular(
|
||||
#[case] id: &str,
|
||||
#[case] tab: ChannelVideoTab,
|
||||
|
|
Loading…
Reference in a new issue