Bug 33227: Unit tests
This patch adds a unit test that launches the swagger-cli validator against our spec. Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
parent
02392b0c2b
commit
502e34e9b0
1 changed files with 19 additions and 1 deletions
20
xt/api.t
20
xt/api.t
|
@ -14,11 +14,14 @@
|
|||
|
||||
use Modern::Perl;
|
||||
|
||||
use Test::More tests => 2;
|
||||
use Test::More tests => 3;
|
||||
|
||||
use Test::Mojo;
|
||||
use Data::Dumper;
|
||||
|
||||
use FindBin();
|
||||
use IPC::Cmd qw(can_run);
|
||||
|
||||
my $t = Test::Mojo->new('Koha::REST::V1');
|
||||
my $spec = $t->get_ok( '/api/v1/', 'Correctly fetched the spec' )->tx->res->json;
|
||||
|
||||
|
@ -75,3 +78,18 @@ foreach my $route ( keys %{$paths} ) {
|
|||
|
||||
is( scalar @missing_additionalProperties, 0 )
|
||||
or diag Dumper \@missing_additionalProperties;
|
||||
|
||||
subtest 'The spec passes the swagger-cli validation' => sub {
|
||||
|
||||
plan tests => 1;
|
||||
|
||||
SKIP: {
|
||||
skip "Skipping tests, swagger-cli missing", 1
|
||||
unless can_run('swagger-cli');
|
||||
|
||||
my $spec_dir = "$FindBin::Bin/../api/v1/swagger";
|
||||
my $var = qx{swagger-cli validate $spec_dir/swagger.yaml 2>&1};
|
||||
is( $?, 0, 'Validation exit code is 0' )
|
||||
or diag $var;
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue