Alien-Build

 view release on metacpan or  search on metacpan

t/alien_build_plugin_fetch_httptiny.t  view on Meta::CPAN

use 5.008004;
use Test2::V0 -no_srand => 1;
use Test::Alien::Build;
use Alien::Build::Plugin::Fetch::HTTPTiny;
use lib 't/lib';
use Path::Tiny qw( path );
use MyTest::HTTP;
use MyTest::CaptureNote;
use Alien::Build::Util qw( _dump );
use JSON::PP qw( decode_json );

subtest 'updates requires' => sub {

  my $plugin = Alien::Build::Plugin::Fetch::HTTPTiny->new( url => 'http://example.test/' );

  my $build = alienfile filename => 'corpus/blank/alienfile';
  my $meta = $build->meta;

  $plugin->init($meta);

  is(
    $build->requires('share'),
    hash {
      field 'HTTP::Tiny'      => '0.044';
      field 'URI'             => '0';
      field 'Net::SSLeay'     => DNE();
      field 'IO::Socket::SSL' => DNE();
      etc;
    },
  );

  note _dump($build->requires('share'));

};

subtest 'updates requires ssl' => sub {

  my $plugin = Alien::Build::Plugin::Fetch::HTTPTiny->new( url => 'https://example.test/' );

  my $build = alienfile filename => 'corpus/blank/alienfile';
  my $meta = $build->meta;

  $plugin->init($meta);

  is(
    $build->requires('share'),
    hash {
      field 'HTTP::Tiny'      => '0.044';
      field 'URI'             => '0';
      field 'Net::SSLeay'     => T();
      field 'IO::Socket::SSL' => T();
      etc;
    },
  );

  note _dump($build->requires('share'));

};

subtest 'use start_url' => sub {

  subtest 'sets start_url' => sub {

    my $build = alienfile_ok q{



( run in 0.707 second using v1.01-cache-2.11-cpan-140bd7fdf52 )