Bug 21073: (follow-up) QA fixes after rebase
authorAgustin Moyano <agustinmoyano@theke.io>
Wed, 15 May 2019 23:49:08 +0000 (20:49 -0300)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Tue, 18 Jun 2019 16:30:07 +0000 (17:30 +0100)
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Koha/Plugins.pm
Koha/Plugins/Handler.pm
Koha/Plugins/Methods.pm
t/db_dependent/Plugins.t

index 301ae65..768a567 100644 (file)
@@ -112,7 +112,7 @@ sub GetPlugins {
     return @plugins;
 }
 
-=head2
+=head2 InstallPlugins
 
 Koha::Plugins::InstallPlugins()
 
index 551448c..30b9e8b 100644 (file)
@@ -70,7 +70,7 @@ sub run {
         return $plugin->$plugin_method( $params );
     } else {
         warn "Plugin does not have method $plugin_method";
-        return undef;
+        return;
     }
 }
 
index 2c1129d..cdac31e 100644 (file)
@@ -43,6 +43,10 @@ sub _type {
     return 'PluginMethod';
 }
 
+=head3 object_class
+
+=cut
+
 sub object_class {
     return 'Koha::Plugin::Method';
 }
index 70e7fb3..c72f27d 100755 (executable)
@@ -23,7 +23,7 @@ use File::Temp qw( tempdir tempfile );
 use FindBin qw($Bin);
 use Module::Load::Conditional qw(can_load);
 use Test::MockModule;
-use Test::More tests => 47;
+use Test::More tests => 49;
 
 use C4::Context;
 use Koha::Database;
@@ -55,12 +55,12 @@ subtest 'GetPlugins() tests' => sub {
     my $plugins = Koha::Plugins->new({ enable_plugins => 1 });
     $plugins->InstallPlugins;
 
-    my @plugins = $plugins->GetPlugins({ method => 'report' });
+    my @plugins = $plugins->GetPlugins({ method => 'report', all => 1 });
 
     my @names = map { $_->get_metadata()->{'name'} } @plugins;
     is( scalar grep( /^Test Plugin$/, @names), 1, "Koha::Plugins::GetPlugins functions correctly" );
 
-    @plugins = $plugins->GetPlugins({ metadata => { my_example_tag  => 'find_me' } });
+    @plugins = $plugins->GetPlugins({ metadata => { my_example_tag  => 'find_me' }, all => 1 });
     @names = map { $_->get_metadata()->{'name'} } @plugins;
     is( scalar @names, 2, "Only two plugins found via a metadata tag" );
 
@@ -88,6 +88,27 @@ subtest 'Version upgrade tests' => sub {
     $schema->storage->txn_rollback;
 };
 
+subtest 'Version upgrade tests' => sub {
+
+    plan tests => 1;
+
+    $schema->storage->txn_begin;
+
+    my $plugin = Koha::Plugin::Test->new( { enable_plugins => 1, cgi => CGI->new } );
+
+    # make sure there's no version on the DB
+    $schema->resultset('PluginData')
+        ->search( { plugin_class => $plugin->{class}, plugin_key => '__INSTALLED_VERSION__' } )
+        ->delete;
+
+    $plugin = Koha::Plugin::Test->new( { enable_plugins => 1, cgi => CGI->new } );
+    my $version = $plugin->retrieve_data('__INSTALLED_VERSION__');
+
+    is( $version, $plugin->get_metadata->{version}, 'Version has been populated correctly' );
+
+    $schema->storage->txn_rollback;
+};
+
 $schema->storage->txn_begin;
 Koha::Plugins::Methods->delete;
 
@@ -239,28 +260,6 @@ subtest 'output and output_html tests' => sub {
     like($stdout, qr{¡Hola output_html!}, 'Correct data');
 };
 
-subtest 'Version upgrade tests' => sub {
-
-    plan tests => 1;
-
-    $schema->storage->txn_begin;
-
-    my $plugin = Koha::Plugin::Test->new( { enable_plugins => 1, cgi => CGI->new } );
-
-    # make sure there's no version on the DB
-    $schema->resultset('PluginData')
-        ->search( { plugin_class => $plugin->{class}, plugin_key => '__INSTALLED_VERSION__' } )
-        ->delete;
-
-    $plugin = Koha::Plugin::Test->new( { enable_plugins => 1, cgi => CGI->new } );
-    my $version = $plugin->retrieve_data('__INSTALLED_VERSION__');
-
-    is( $version, $plugin->get_metadata->{version}, 'Version has been populated correctly' );
-
-    $schema->storage->txn_rollback;
-};
-
-
 subtest 'Test _version_compare' => sub {
 
     plan tests => 6;
@@ -286,3 +285,5 @@ subtest 'new() tests' => sub {
     $result = Koha::Plugins->new({ enable_plugins => 1 });
     is( ref($result), 'Koha::Plugins', 'calling new with enable_plugins makes it override the config' );
 };
+
+$schema->storage->txn_rollback;
\ No newline at end of file