|
Lines 27-32
use Test::MockModule;
Link Here
|
| 27 |
use Test::NoWarnings; |
27 |
use Test::NoWarnings; |
| 28 |
use Test::More tests => 20; |
28 |
use Test::More tests => 20; |
| 29 |
use Test::Warn; |
29 |
use Test::Warn; |
|
|
30 |
use Test::Exception; |
| 30 |
|
31 |
|
| 31 |
use C4::Context; |
32 |
use C4::Context; |
| 32 |
use Koha::Cache::Memory::Lite; |
33 |
use Koha::Cache::Memory::Lite; |
|
Lines 193-199
subtest 'GetPlugins() tests' => sub {
Link Here
|
| 193 |
|
194 |
|
| 194 |
subtest 'InstallPlugins() tests' => sub { |
195 |
subtest 'InstallPlugins() tests' => sub { |
| 195 |
|
196 |
|
| 196 |
plan tests => 4; |
197 |
plan tests => 6; |
| 197 |
|
198 |
|
| 198 |
$schema->storage->txn_begin; |
199 |
$schema->storage->txn_begin; |
| 199 |
|
200 |
|
|
Lines 204-210
subtest 'InstallPlugins() tests' => sub {
Link Here
|
| 204 |
# Tests for the exclude parameter |
205 |
# Tests for the exclude parameter |
| 205 |
# Test the returned plugins of the InstallPlugins subroutine |
206 |
# Test the returned plugins of the InstallPlugins subroutine |
| 206 |
my $plugins = Koha::Plugins->new( { enable_plugins => 1 } ); |
207 |
my $plugins = Koha::Plugins->new( { enable_plugins => 1 } ); |
| 207 |
my @installed_plugins = $plugins->InstallPlugins( { exclude => [ "Test", "Koha::Plugin::MarcFieldValues" ] } ); |
208 |
my @installed_plugins = $plugins->InstallPlugins( { exclude => [ "Koha::Plugin::Test", "Koha::Plugin::MarcFieldValues" ] } ); |
| 208 |
my $plugin_classes = join( " ", map { $_->{class} } @installed_plugins ); |
209 |
my $plugin_classes = join( " ", map { $_->{class} } @installed_plugins ); |
| 209 |
|
210 |
|
| 210 |
my $result = grep { $plugin_classes !~ $_ } [ ":Test |:Test\$", ":MarcFieldValues |:MarcFieldValues\$" ] |
211 |
my $result = grep { $plugin_classes !~ $_ } [ ":Test |:Test\$", ":MarcFieldValues |:MarcFieldValues\$" ] |
|
Lines 225-231
subtest 'InstallPlugins() tests' => sub {
Link Here
|
| 225 |
|
226 |
|
| 226 |
# Tests for the include parameter |
227 |
# Tests for the include parameter |
| 227 |
# Test the returned plugins of the InstallPlugins subroutine |
228 |
# Test the returned plugins of the InstallPlugins subroutine |
| 228 |
@installed_plugins = $plugins->InstallPlugins( { include => [ "Test", "Koha::Plugin::MarcFieldValues" ] } ); |
229 |
@installed_plugins = $plugins->InstallPlugins( { include => [ "Koha::Plugin::Test", "Koha::Plugin::MarcFieldValues" ] } ); |
| 229 |
|
230 |
|
| 230 |
$result = 1; |
231 |
$result = 1; |
| 231 |
foreach my $plugin_class ( map { $_->{class} } @installed_plugins ) { |
232 |
foreach my $plugin_class ( map { $_->{class} } @installed_plugins ) { |
|
Lines 242-247
subtest 'InstallPlugins() tests' => sub {
Link Here
|
| 242 |
} |
243 |
} |
| 243 |
ok( $result, "Only included plugins are installed" ); |
244 |
ok( $result, "Only included plugins are installed" ); |
| 244 |
|
245 |
|
|
|
246 |
# Tests when both include and exclude parameter are used simultaneously |
| 247 |
throws_ok |
| 248 |
{ |
| 249 |
$plugins->InstallPlugins( { exclude => [ "Koha::Plugin::Test" ], include => [ "Koha::Plugin::Test" ] } ); |
| 250 |
} |
| 251 |
'Koha::Exceptions::BadParameter'; |
| 252 |
# Tests when the plugin to be installled is not found |
| 253 |
throws_ok |
| 254 |
{ |
| 255 |
$plugins->InstallPlugins( { include => [ "Koha::Plugin::NotfoundPlugin" ] } ); |
| 256 |
} |
| 257 |
'Koha::Exceptions::BadParameter'; |
| 258 |
|
| 245 |
$schema->storage->txn_rollback; |
259 |
$schema->storage->txn_rollback; |
| 246 |
}; |
260 |
}; |
| 247 |
|
261 |
|
| 248 |
- |
|
|