25-test_x509.t revision 1.1.1.2
1#! /usr/bin/env perl
2# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
3#
4# Licensed under the OpenSSL license (the "License").  You may not use
5# this file except in compliance with the License.  You can obtain a copy
6# in the file LICENSE in the source distribution or at
7# https://www.openssl.org/source/license.html
8
9
10use strict;
11use warnings;
12
13use File::Spec;
14use OpenSSL::Test qw/:DEFAULT srctop_file/;
15
16setup("test_x509");
17
18plan tests => 9;
19
20require_ok(srctop_file('test','recipes','tconversion.pl'));
21
22my $pem = srctop_file("test/certs", "cyrillic.pem");
23my $out = "cyrillic.out";
24my $msb = srctop_file("test/certs", "cyrillic.msb");
25my $utf = srctop_file("test/certs", "cyrillic.utf8");
26
27ok(run(app(["openssl", "x509", "-text", "-in", $pem, "-out", $out,
28            "-nameopt", "esc_msb"])));
29is(cmp_text($out, srctop_file("test/certs", "cyrillic.msb")),
30   0, 'Comparing esc_msb output');
31ok(run(app(["openssl", "x509", "-text", "-in", $pem, "-out", $out,
32            "-nameopt", "utf8"])));
33is(cmp_text($out, srctop_file("test/certs", "cyrillic.utf8")),
34   0, 'Comparing utf8 output');
35unlink $out;
36
37subtest 'x509 -- x.509 v1 certificate' => sub {
38    tconversion("x509", srctop_file("test","testx509.pem"));
39};
40subtest 'x509 -- first x.509 v3 certificate' => sub {
41    tconversion("x509", srctop_file("test","v3-cert1.pem"));
42};
43subtest 'x509 -- second x.509 v3 certificate' => sub {
44    tconversion("x509", srctop_file("test","v3-cert2.pem"));
45};
46
47subtest 'x509 -- pathlen' => sub {
48    ok(run(test(["v3ext", srctop_file("test/certs", "pathlen.pem")])));
49}
50