From fc66eedcc429e1eb8175d6e95bc5e921d8b94664 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Thu, 31 Mar 2016 08:59:29 +0100 Subject: [PATCH] Bug 16177: Fix tests for ColumnsSsettings.t This failure has been introduced by commit 243b797dd11bc0ac1f475195ab765ffbf2220f8b Bug 15285: Update common files This is because the cannot_be_modified key is not always created by C4::Utils::DataTables::ColumnsSettings subroutines Test plan: prove t/db_dependent/ColumnsSettings.t should return green And you can also test a table where the feature is set and a column cannot be modified from the admin page. NOTE: Works as described. I was pondering this potential solution when I found it in bugzilla. Signed-off-by: Mark Tompsett Signed-off-by: Marcel de Rooy Signed-off-by: Brendan A Gallagher --- C4/Utils/DataTables/ColumnsSettings.pm | 3 +++ t/db_dependent/ColumnsSettings.t | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/C4/Utils/DataTables/ColumnsSettings.pm b/C4/Utils/DataTables/ColumnsSettings.pm index 6a804c43a4..a1078864c1 100644 --- a/C4/Utils/DataTables/ColumnsSettings.pm +++ b/C4/Utils/DataTables/ColumnsSettings.pm @@ -50,6 +50,7 @@ sub get_columns { $columns = [ map { { cannot_be_toggled => exists $_->{cannot_be_toggled} ? $_->{cannot_be_toggled} : 0, + cannot_be_modified => exists $_->{cannot_be_modified} ? $_->{cannot_be_modified} : 0, is_hidden => exists $_->{is_hidden} ? $_->{is_hidden} : 0, columnname => $_->{columnname}, } @@ -69,6 +70,8 @@ sub get_modules { @{ $list->{modules}{ $c->module }{ $c->page }{ $c->tablename } }; $column->{is_hidden} = $c->is_hidden; $column->{cannot_be_toggled} = $c->cannot_be_toggled; + $column->{cannot_be_modified} = 0 + unless exists $column->{cannot_be_modified}; } return $list->{modules}; diff --git a/t/db_dependent/ColumnsSettings.t b/t/db_dependent/ColumnsSettings.t index 460d54743c..da759311db 100644 --- a/t/db_dependent/ColumnsSettings.t +++ b/t/db_dependent/ColumnsSettings.t @@ -133,26 +133,31 @@ my $modules_expected = { { columnname => 'symbol', cannot_be_toggled => 0, + cannot_be_modified => 0, is_hidden => 0, }, { columnname => 'iso_code', cannot_be_toggled => 0, + cannot_be_modified => 0, is_hidden => 0, }, { columnname => 'last_updated', cannot_be_toggled => 0, + cannot_be_modified => 0, is_hidden => 0, }, { columnname => 'active', cannot_be_toggled => 0, + cannot_be_modified => 0, is_hidden => 1, }, { columnname => 'actions', cannot_be_toggled => 1, + cannot_be_modified => 0, is_hidden => 0, }, ]