12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- # Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
- #
- # Licensed under the OpenSSL license (the "License"). You may not use
- # this file except in compliance with the License. You can obtain a copy
- # in the file LICENSE in the source distribution or at
- # https://www.openssl.org/source/license.html
- package OpenSSL::Test::Simple;
- use strict;
- use warnings;
- use Exporter;
- use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
- $VERSION = "0.2";
- @ISA = qw(Exporter);
- @EXPORT = qw(simple_test);
- =head1 NAME
- OpenSSL::Test::Simple - a few very simple test functions
- =head1 SYNOPSIS
- use OpenSSL::Test::Simple;
- simple_test("my_test_name", "destest", "des");
- =head1 DESCRIPTION
- Sometimes, the functions in L<OpenSSL::Test> are quite tedious for some
- repetitive tasks. This module provides functions to make life easier.
- You could call them hacks if you wish.
- =cut
- use OpenSSL::Test;
- use OpenSSL::Test::Utils;
- =over 4
- =item B<simple_test NAME, PROGRAM, ALGORITHM>
- Runs a test named NAME, running the program PROGRAM with no arguments,
- to test the algorithm ALGORITHM.
- A complete recipe looks like this:
- use OpenSSL::Test::Simple;
- simple_test("test_bf", "bftest", "bf");
- =back
- =cut
- # args:
- # name (used with setup())
- # algorithm (used to check if it's at all supported)
- # name of binary (the program that does the actual test)
- sub simple_test {
- my ($name, $prgr, @algos) = @_;
- setup($name);
- if (scalar(disabled(@algos))) {
- if (scalar(@algos) == 1) {
- plan skip_all => $algos[0]." is not supported by this OpenSSL build";
- } else {
- my $last = pop @algos;
- plan skip_all => join(", ", @algos)." and $last are not supported by this OpenSSL build";
- }
- }
- plan tests => 1;
- ok(run(test([$prgr])), "running $prgr");
- }
- =head1 SEE ALSO
- L<OpenSSL::Test>
- =head1 AUTHORS
- Richard Levitte E<lt>levitte@openssl.orgE<gt> with inspiration
- from Rich Salz E<lt>rsalz@openssl.orgE<gt>.
- =cut
- 1;
|