Skip to content

Commit

Permalink
Add a test for the UI API
Browse files Browse the repository at this point in the history
The best way to test the UI interface is currently by using an openssl
command that uses password_callback.  The only one that does this is
'genrsa'.
Since password_callback uses a UI method derived from UI_OpenSSL(), it
ensures that one gets tested well enough as well.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from #2040)
  • Loading branch information
levitte committed Dec 7, 2016
1 parent 0a687ab commit 17ac8ea
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions test/recipes/03-test_ui.t
@@ -0,0 +1,30 @@
#! /usr/bin/env perl
# Copyright 2015-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

use strict;
use warnings;
use OpenSSL::Test;

setup("test_ui");

plan tests => 1;

note <<"EOF";
The best way to test the UI interface is currently by using an openssl
command that uses password_callback. The only one that does this is
'genrsa'.
Since password_callback uses a UI method derived from UI_OpenSSL(), it
ensures that one gets tested well enough as well.
EOF

my $outfile = "rsa_$$.pem";
ok(run(app(["openssl", "genrsa", "-passout", "pass:password", "-aes128",
"-out", $outfile])),
"Checking that genrsa with a password works properly");

unlink $outfile;

0 comments on commit 17ac8ea

Please sign in to comment.