Alien-OpenMP

 view release on metacpan or  search on metacpan

t/03-configure.t  view on Meta::CPAN


subtest 'unknown and therefore unsupported' => sub {
  local $Alien::OpenMP::configure::CCNAME = q{unsupported xyz};
  local $Alien::OpenMP::configure::OS     = q{foobar-os};
  Alien::OpenMP::configure->_reset;

  ok !Alien::OpenMP::configure->is_known, 'not known AKA unsupported';
  is +Alien::OpenMP::configure->cflags, q{}, 'empty string';
  is +Alien::OpenMP::configure->libs,   q{}, 'empty string';

  my ($stdout, $stderr, @result) = capture { Alien::OpenMP::configure->unsupported; 1 };
  is_deeply \@result, [1], 'no errors';
  like $stdout, qr{^OS Unsupported},                                         'Message for ExtUtils::MakeMaker';
  like $stderr, qr{This version of unsupported xyz does not support OpenMP}, 'unsupported compiler name';
};

subtest 'darwin, missing dependencies' => sub {
  local $Alien::OpenMP::configure::CCNAME = q{clang};
  local $Alien::OpenMP::configure::OS     = q{darwin};
  local $ENV{PATH}                        = "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin";
  Alien::OpenMP::configure->_reset;
  ok +Alien::OpenMP::configure->is_known, 'known';

  my ($stdout, $stderr, @result) = capture { Alien::OpenMP::configure->unsupported; 1 };
  is_deeply \@result, [1], 'no errors';
  like $stdout, qr{^OS Unsupported},                                      'Message for ExtUtils::MakeMaker';
  like $stderr, qr{This version of clang does not support OpenMP},        'clang missing openmp support';
  like $stderr, qr{Support can be enabled by using Homebrew or Macports}, 'unsupported compiler name';
};


done_testing;



( run in 0.436 second using v1.01-cache-2.11-cpan-55f5a4728d2 )