File: youtube.t

package info (click to toggle)
libwww-youtube-download-perl 0.65%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, forky, sid, trixie
  • size: 348 kB
  • sloc: perl: 1,113; makefile: 2
file content (38 lines) | stat: -rw-r--r-- 787 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
use strict;
use warnings;
use Test::More;
use WWW::YouTube::Download;
use LWP::UserAgent;
use HTTP::Request;

plan skip_all => 'env P5_YOUTUBE_NETWORK_TESTS not set'
    unless defined( $ENV{'P5_YOUTUBE_NETWORK_TESTS'} );

sub check_video_fetch_url {
    my $video_id = shift;

    my $yt  = WWW::YouTube::Download->new();
    my $url = $yt->playback_url($video_id);

    my $ua = LWP::UserAgent->new();
    $ua->agent('');
    $ua->timeout('60');
    $ua->env_proxy;

    my $request = HTTP::Request->new;
    $request->method('HEAD');
    $request->uri($url);

    my $response = $ua->request($request);
    my $code     = $response->code;

    is $code, 200;
}

# YAPC video 1
check_video_fetch_url('Y1I1KcKvz9Q');

# YAPC video 2
check_video_fetch_url('oAkasBMJJ18');

done_testing;