Files
NewTube/server/tests/fixtures/provider-suggestions.json
T
bruno 665a0f0ebd
CI / build-and-test (push) Successful in 14m43s
feat(providers): phases 7.3/7.4/7.6/8.1 — provenance, health, NDJSON, contrat unique
7.3: capturedAt/source au registre + 6 adaptateurs + module provenance.ts + ?debug=1 (search-transport.mjs). 7.4: ProviderHealthService + badge source degradee. 7.6: squelettes par provider + snapshots progressifs + transport NDJSON /api/search. 8.1: ProviderAdapter unifie (search enveloppe + channelContent/channelMeta/capabilities) via getProviderAdapter + test de contrat offline.
2026-09-30 07:57:11 -04:00

264 lines
9.8 KiB
JSON

{
"_comment": "FIGÉ PAR `npm run fixtures:record`. Ne pas éditer à la main : régénérer.",
"_contractVersion": 2,
"_recordedAt": "2026-09-30T00:23:23.598Z",
"_query": "tutorial",
"providers": {
"yt": {
"items": [
{
"badges": [
"Nouveau",
"4K"
],
"channelExternalId": "UC9deX25Xus0U-Znt3_ILSpw",
"channelHandle": "360Jeezy",
"channelId": "UC9deX25Xus0U-Znt3_ILSpw",
"channelRef": {
"provider": "yt",
"scheme": "yt-uc",
"value": "UC9deX25Xus0U-Znt3_ILSpw"
},
"channelUrl": "https://www.youtube.com/channel/UC9deX25Xus0U-Znt3_ILSpw",
"duration": 678,
"id": "RzmfAJUqDh0",
"thumbnail": "https://i.ytimg.com/vi/RzmfAJUqDh0/hq720.jpg?sqp=-oaymwEcCOgCEMoBSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLA0urkQ_b_2XIVuqpVA68sMKr1IIQ",
"title": "HAIRCUT TUTORIAL: WE CUT IT OFF! 360 WAVES | LOW TAPER on COARSE HAIR",
"type": "video",
"uploaderName": "360Jeezy",
"url": "https://www.youtube.com/watch?v=RzmfAJUqDh0",
"views": 6665
},
{
"channelExternalId": "UCp-oS-GBudIPdLrfV_EuSxQ",
"channelHandle": "Sabse Bada Maker",
"channelId": "UCp-oS-GBudIPdLrfV_EuSxQ",
"channelRef": {
"provider": "yt",
"scheme": "yt-uc",
"value": "UCp-oS-GBudIPdLrfV_EuSxQ"
},
"channelUrl": "https://www.youtube.com/channel/UCp-oS-GBudIPdLrfV_EuSxQ",
"duration": 12,
"id": "wAKZjllBB0w",
"thumbnail": "https://i.ytimg.com/vi/wAKZjllBB0w/hq720.jpg?sqp=-oaymwE2COgCEMoBSFXyq4qpAygIARUAAIhCGABwAcABBvABAfgBtgiAAoAPigIMCAAQARhbIF8oZTAP&rs=AOn4CLCISuErJFs1JV7EDlMTxHf1NfRNMw",
"title": "Crazy mobile videography editing tutorial 📱👀 #shorts #tutorial",
"type": "video",
"uploaderName": "Sabse Bada Maker",
"url": "https://www.youtube.com/watch?v=wAKZjllBB0w",
"views": 38214938
},
{
"badges": [
"4K"
],
"channelExternalId": "UCXs6kLLJ8mhYVbu3OlC3dow",
"channelHandle": "BAKAR EDITORIAL ",
"channelId": "UCXs6kLLJ8mhYVbu3OlC3dow",
"channelRef": {
"provider": "yt",
"scheme": "yt-uc",
"value": "UCXs6kLLJ8mhYVbu3OlC3dow"
},
"channelUrl": "https://www.youtube.com/channel/UCXs6kLLJ8mhYVbu3OlC3dow",
"duration": 17,
"id": "NI1iEBGNDb0",
"thumbnail": "https://i.ytimg.com/vi/NI1iEBGNDb0/hq720_2.jpg?sqp=-oaymwE2COgCEMoBSFXyq4qpAygIARUAAIhCGABwAcABBvABAfgBtgiAAu4LigIMCAAQARhbIFsoWzAP&rs=AOn4CLDIKfn0CDbxP3eX-zd6e9lzI6KogA",
"title": "Master Masking in CapCut Step-by-Step Editing Tutorial CapCut Explained Beginner to Pro Guide",
"type": "video",
"uploaderName": "BAKAR EDITORIAL ",
"url": "https://www.youtube.com/watch?v=NI1iEBGNDb0",
"views": 12428432
}
]
},
"dm": {
"items": [
{
"channelId": "x1avcry",
"channelRef": {
"provider": "dm",
"scheme": "dm-user",
"value": "x1avcry"
},
"duration": 106,
"height": 768,
"id": "x1067b5",
"thumbnail": "https://s2.dmcdn.net/v/3dmw11g41PTBKxtO0/x720",
"title": "Tutorial Wunsch Tutorial",
"type": "video",
"uploadedDate": "2013-05-24T11:11:56.000Z",
"uploaderAvatar": "https://s1.dmcdn.net/u/4iK1k1gYtdQ4tt6Uv/80x80",
"uploaderName": "diebestentutorials",
"url": "https://www.dailymotion.com/video/x1067b5",
"views": 14,
"width": 1024
},
{
"channelId": "x1xewsq",
"channelRef": {
"provider": "dm",
"scheme": "dm-user",
"value": "x1xewsq"
},
"duration": 99,
"height": 1040,
"id": "x6fsvsp",
"thumbnail": "https://s2.dmcdn.net/v/NDDRv1clhOzylBCZ-/x720",
"title": "Tutorial-Tutorial-คั่วกลิ้งหมูสับ",
"type": "video",
"uploadedDate": "2018-03-07T04:57:23.000Z",
"uploaderAvatar": "https://s1.dmcdn.net/u/6ymAA1gWyHxJ8up9q/80x80",
"uploaderName": "Nutthakit Boontrakan",
"url": "https://www.dailymotion.com/video/x6fsvsp",
"views": 8,
"width": 1040
},
{
"channelId": "x1kgnxy",
"channelRef": {
"provider": "dm",
"scheme": "dm-user",
"value": "x1kgnxy"
},
"duration": 98,
"height": 720,
"id": "x36s5pb",
"thumbnail": "https://s1.dmcdn.net/v/BVRtV1e9wmzeEIfvy/x720",
"title": "[TUTORIAL] Audacity Acapella Tutorial",
"type": "video",
"uploadedDate": "2015-09-13T22:23:02.000Z",
"uploaderAvatar": "https://s1.dmcdn.net/u/5fnKs1gYDjmqATtPF/80x80",
"uploaderName": "Acapellas",
"url": "https://www.dailymotion.com/video/x36s5pb",
"views": 4,
"width": 1280
}
]
},
"tw": {
"items": [],
"note": "aucun résultat au moment du gel — couverture non testée pour ce provider"
},
"pt": {
"items": [
{
"channelId": "stereo",
"channelRef": {
"provider": "pt",
"scheme": "pt-composite",
"value": "videoteca.kenobit.it|stereo"
},
"duration": 599,
"id": "33e18a40-9bb1-4ab2-8cc6-211cc088a85b",
"kind": "vod",
"likes": 2,
"publishedAt": "2024-02-02T19:35:59.534Z",
"thumbnail": "https://videoteca.kenobit.it/static/thumbnails/b612fafc-5b64-42ff-bc10-26d922a70162.jpg",
"title": "Tutorial per uploader: come si carica un disco su STEREO?",
"type": "video",
"uploaderAvatar": "/lazy-static/avatars/b0d2f3c7-bb5b-46f5-a3ca-dc2276630c89.png",
"uploaderName": "Kenobit",
"url": "https://videoteca.kenobit.it/videos/watch/33e18a40-9bb1-4ab2-8cc6-211cc088a85b",
"viewCount": 74,
"views": 74
},
{
"channelAvatarUrl": "/lazy-static/avatars/84119f2d-ae55-4a05-b882-5cc2166a9b62.jpg",
"channelId": "learning",
"channelRef": {
"provider": "pt",
"scheme": "pt-composite",
"value": "fediverse.tv|learning"
},
"duration": 170,
"id": "2149c7a9-5dc0-41b6-aa29-f19f88e20873",
"kind": "vod",
"language": "es",
"likes": 4,
"publishedAt": "2021-11-12T16:49:04.454Z",
"thumbnail": "https://fediverse.tv/lazy-static/thumbnails/2961e0bc-a9c9-4338-bdff-ac0fc326d827.jpg",
"title": "[TUTORIAL] - Como hacer un fedicorto",
"type": "video",
"uploaderAvatar": "/lazy-static/avatars/881f287d-1b9d-4609-8e75-93d75fdb7380.png",
"uploaderName": "spectrumgirl",
"url": "https://fediverse.tv/videos/watch/2149c7a9-5dc0-41b6-aa29-f19f88e20873",
"viewCount": 57,
"views": 57
},
{
"channelId": "51063_channel",
"channelRef": {
"provider": "pt",
"scheme": "pt-composite",
"value": "openmedia.edunova.it|51063_channel"
},
"duration": 705,
"id": "e01c50d1-1035-4dec-927b-828187bdef91",
"kind": "vod",
"language": "it",
"likes": 0,
"publishedAt": "2024-11-02T15:40:01.069Z",
"thumbnail": "https://openmedia.edunova.it/lazy-static/thumbnails/d266b279-aaeb-4b7a-8fd7-0d7f1cd996c7.jpg",
"title": "tutorial",
"type": "video",
"uploaderName": "MARINA DE ANGELIS",
"url": "https://openmedia.edunova.it/videos/watch/e01c50d1-1035-4dec-927b-828187bdef91",
"viewCount": 21,
"views": 21
}
]
},
"od": {
"items": [
{
"channelRef": {
"provider": "od",
"scheme": "od-claim",
"value": "@AllThingsSecured"
},
"duration": 527,
"id": "1c26fcfbd6e8b8acbee692b1d789e70c04d4366a",
"thumbnail": "https://thumbs.odycdn.com/11cd24cd9a5bff1d21c965d635a130c0.webp",
"title": "PGP Email Tutorial: How to Encrypt a Gmail Message",
"type": "video",
"uploaderName": "@AllThingsSecured",
"url": "https://odysee.com/PGP-Email-Tutorial_-How-to-Encrypt-a-Gmail-Message:1c26fcfbd6e8b8acbee692b1d789e70c04d4366a"
},
{
"channelRef": {
"provider": "od",
"scheme": "od-claim",
"value": "@pacheldestructor"
},
"duration": 398,
"id": "259776a24b1b646ba485fa9a2c3a9291503ead91",
"thumbnail": "https://thumbs.odycdn.com/219f40e4bdb4cd3b45c636d20757ce93.webp",
"title": "Tutorial Color Dino",
"type": "video",
"uploaderName": "@pacheldestructor",
"url": "https://odysee.com/Tutorial_Color_Dino:259776a24b1b646ba485fa9a2c3a9291503ead91"
},
{
"channelRef": {
"provider": "od",
"scheme": "od-claim",
"value": "@Cahlen"
},
"duration": 142,
"id": "2a248bebcfaed005a0f56afabf22f01e9e507b08",
"thumbnail": "https://thumbs.odycdn.com/bc956cd079fc5c30567f369728c79121.webp",
"title": "Plasma Machine Video Tutorial",
"type": "video",
"uploaderName": "@Cahlen",
"url": "https://odysee.com/CahlenLee_20260915_PlasmaMachineVideoTutorial:2a248bebcfaed005a0f56afabf22f01e9e507b08"
}
]
},
"ru": {
"items": [],
"note": "erreur au gel : rumble_unavailable"
}
}
}