From 54df897c98376b116e3580d278c8e48ffd4c99fe Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Mon, 1 Jul 2013 15:12:53 +0200 Subject: [PATCH] Bug 10523: Remove two obsolete routines from Installer.pm Content-Type: text/plain; charset=utf-8 The routines sql_file_list and marcflavour_list in Installer.pm are not used. There are some references to them in probably obsolete '/lib' test units. I changed these test units for the record too. Also: removed the not-existing marcflavour parameter of sample_data_sql_list in its call in install.pl. Test plan: Run a new install. --- C4/Installer.pm | 59 +------------------- installer/install.pl | 2 +- t/db_dependent/lib/KohaTest.pm | 5 +- t/db_dependent/lib/KohaTest/Installer.pm | 2 - .../lib/KohaTest/Installer/SqlScripts.pm | 7 ++- 5 files changed, 11 insertions(+), 64 deletions(-) diff --git a/C4/Installer.pm b/C4/Installer.pm index 5bb9662..2add0e8 100644 --- a/C4/Installer.pm +++ b/C4/Installer.pm @@ -34,7 +34,8 @@ C4::Installer my $installer = C4::Installer->new(); my $all_languages = getAllLanguages(); my $error = $installer->load_db_schema(); - my $list = $installer->sql_file_list('en', 'marc21', { optional => 1, mandatory => 1 }); + my $list; + #fill $list with list of sql files my ($fwk_language, $error_list) = $installer->load_sql_in_order($all_languages, @$list); $installer->set_version_syspref(); $installer->set_marcflavour_syspref('MARC21'); @@ -77,27 +78,6 @@ sub new { return $self; } -=head2 marcflavour_list - - my ($marcflavours) = $installer->marcflavour_list($lang); - -Return a arrayref of the MARC flavour sets available for the -specified language C<$lang>. Returns 'undef' if a directory -for the language does not exist. - -=cut - -sub marcflavour_list { - my $self = shift; - my $lang = shift; - - my $dir = C4::Context->config('intranetdir') . "/installer/data/$self->{dbms}/$lang/marcflavour"; - opendir(MYDIR, $dir) or return; - my @list = grep { !/^\.|CVS/ && -d "$dir/$_" } readdir(MYDIR); - closedir MYDIR; - return \@list; -} - =head2 marc_framework_sql_list my ($defaulted_to_en, $list) = @@ -257,41 +237,6 @@ sub sample_data_sql_list { return ($defaulted_to_en, \@levellist); } -=head2 sql_file_list - - my $list = $installer->sql_file_list($lang, $marcflavour, $subset_wanted); - -Returns an arrayref containing the filepaths of installer SQL scripts -available for laod. The C<$lang> and C<$marcflavour> arguments -specify the desired language and MARC flavour. while C<$subset_wanted> -is a hashref containing possible named parameters 'mandatory' and 'optional'. - -=cut - -sub sql_file_list { - my $self = shift; - my $lang = shift; - my $marcflavour = shift; - my $subset_wanted = shift; - - my ($marc_defaulted_to_en, $marc_sql) = $self->marc_framework_sql_list($lang, $marcflavour); - my ($sample_defaulted_to_en, $sample_sql) = $self->sample_data_sql_list($lang); - - my @sql_list = (); - map { - map { - if ($subset_wanted->{'mandatory'}) { - push @sql_list, $_->{'fwkfile'} if $_->{'mandatory'}; - } - if ($subset_wanted->{'optional'}) { - push @sql_list, $_->{'fwkfile'} unless $_->{'mandatory'}; - } - } @{ $_->{'frameworks'} } - } (@$marc_sql, @$sample_sql); - - return \@sql_list -} - =head2 load_db_schema my $error = $installer->load_db_schema(); diff --git a/installer/install.pl b/installer/install.pl index 58388cb..39ba0fe 100755 --- a/installer/install.pl +++ b/installer/install.pl @@ -241,7 +241,7 @@ elsif ( $step && $step == 3 ) { $template->param( "frameworksloop" => $fwklist ); $template->param( "marcflavour" => ucfirst($marcflavour)); - my ($sample_defaulted_to_en, $levellist) = $installer->sample_data_sql_list($langchoice, $marcflavour); + my ($sample_defaulted_to_en, $levellist) = $installer->sample_data_sql_list($langchoice); $template->param( "en_sample_data" => $sample_defaulted_to_en); $template->param( "levelloop" => $levellist ); $template->param( "$op" => 1 ); diff --git a/t/db_dependent/lib/KohaTest.pm b/t/db_dependent/lib/KohaTest.pm index 5a508ec..e320399 100644 --- a/t/db_dependent/lib/KohaTest.pm +++ b/t/db_dependent/lib/KohaTest.pm @@ -716,8 +716,9 @@ sub create_test_database { my $all_languages = getAllLanguages(); my $error = $installer->load_db_schema(); die "unable to load_db_schema: $error" if ( $error ); - my $list = $installer->sql_file_list('en', 'marc21', { optional => 1, - mandatory => 1 } ); + my (undef, $list) = $installer->marc_framework_sql_list('en', 'marc21'); + my (undef, $list2) = $installer->sample_data_sql_list('en'); + push @$list, @$list2; my ($fwk_language, $installed_list) = $installer->load_sql_in_order($all_languages, @$list); $installer->set_version_syspref(); $installer->set_marcflavour_syspref('MARC21'); diff --git a/t/db_dependent/lib/KohaTest/Installer.pm b/t/db_dependent/lib/KohaTest/Installer.pm index b014552..b737d83 100644 --- a/t/db_dependent/lib/KohaTest/Installer.pm +++ b/t/db_dependent/lib/KohaTest/Installer.pm @@ -16,10 +16,8 @@ sub methods : Test( 1 ) { my $self = shift; my @methods = qw( new - marcflavour_list marc_framework_sql_list sample_data_sql_list - sql_file_list load_db_schema load_sql_in_order set_marcflavour_syspref diff --git a/t/db_dependent/lib/KohaTest/Installer/SqlScripts.pm b/t/db_dependent/lib/KohaTest/Installer/SqlScripts.pm index 510c574..2a16401 100644 --- a/t/db_dependent/lib/KohaTest/Installer/SqlScripts.pm +++ b/t/db_dependent/lib/KohaTest/Installer/SqlScripts.pm @@ -32,7 +32,7 @@ sub installer_all_sample_data : Tests { foreach my $lang_code (@languages) { SKIP: { - my $marc_flavours = $self->{installer}->marcflavour_list($lang_code); + my $marc_flavours = [ glob($dir.'/'.$lang_code.'/marcflavour/*') ]; ok(defined($marc_flavours), "at least one MARC flavour for $lang_code"); skip "no MARC flavours for $lang_code" unless defined($marc_flavours); @@ -43,7 +43,10 @@ sub installer_all_sample_data : Tests { is($schema_error, "", "no errors during schema load"); skip "error during schema load" if $schema_error ne ""; - my $list = $self->{installer}->sql_file_list($lang_code, $flavour, { optional => 1, mandatory => 1 }); + my (undef, $list) = $installer->marc_framework_sql_list($lang_code, $flavour); + my (undef, $list2) = $installer->sample_data_sql_list($lang_code); + push @$list, @$list2; + my $sql_count = scalar(@$list); cmp_ok($sql_count, '>', 0, "at least one SQL init file for $lang_code, $flavour"); skip "no SQL init files defined for $lang_code, $flavour" unless $sql_count > 0; -- 1.7.7.6