#!/usr/bin/env perl
require 5.008;
BEGIN { $^W = 1; }
use strict;

chdir("sha2") or die "chdir testdir failed: $!\n";

require TestDriver;

my $td = new TestDriver('sha2');

my @providers = ();
if (exists $ENV{'QPDF_CRYPTO_PROVIDER'})
{
    push(@providers, $ENV{'QPDF_CRYPTO_PROVIDER'});
}
else
{
    open(Q, "qpdf --show-crypto|") or die;
    while (<Q>)
    {
        s/\s+$//s;
        push(@providers, $_);
    }
    close(Q);
}
foreach my $p (@providers)
{
    $ENV{'QPDF_CRYPTO_PROVIDER'} = $p;

    $td->runtest("sha2 ($p)",
                 {$td->COMMAND => "sha2"},
                 {$td->FILE => "sha2.out",
                      $td->EXIT_STATUS => 0},
                 $td->NORMALIZE_NEWLINES);
}

$td->report(scalar(@providers));
