When I execute the test command : prove t/db_dependent/Record.t , the test fails with the message : t/db_dependent/Record.t .. 1/11 # Failed test 'testing bibtex' # at t/db_dependent/Record.t line 107. # got: '@book{testID, # author = {Rowling, J.K.}, # title = {Harry potter}, # year = {2001}, # publisher = {Scholastic} # } # ' # expected: '@book{testID, # author = {Rowling, J.K.}, # title = {Harry potter}, # publisher = {Scholastic}, # year = {2001} # } # ' # Failed test 'testing bibtex with RDA 264 field' # at t/db_dependent/Record.t line 120. # got: '@book{testID, # publisher = {Reprints}, # year = {2011}, # author = {Rowling, J.K.}, # title = {Harry potter} # } # ' # expected: '@book{testID, # author = {Rowling, J.K.}, # title = {Harry potter}, # publisher = {Reprints}, # year = {2011} # } # ' # Looks like you failed 2 tests of 11. t/db_dependent/Record.t .. Dubious, test returned 2 (wstat 512, 0x200) Failed 2/11 subtests Test Summary Report ------------------- t/db_dependent/Record.t (Wstat: 512 Tests: 11 Failed: 2) Failed tests: 9-10 Non-zero exit status: 2 Files=1, Tests=11, 1 wallclock secs ( 0.03 usr 0.01 sys + 1.33 cusr 0.08 csys = 1.45 CPU) Result: FAIL My OS is Ubuntu 14.04 and my perl version is 5.18.2. It seems to be linked with hash key order randomization.
Created attachment 28794 [details] [review] Bug 14391: Fix fields order on exporting to bibtex The C4::Record::marc2bibtex subroutine supposes hashref keys are sorted which is wrong with perl 5.18 Note that the t/db_dependent/Record.t fails without this patch. Test plan (for perl >= 5.18 only): 1/ prove t/db_dependent/Record.t should return green 2/ Try to export a record to bibtex and verify the order is correct (should be author, title, year, published, etc.).
Created attachment 28848 [details] [review] [SIGNED-OFF] Bug 12409: Fix fields order on exporting to bibtex The C4::Record::marc2bibtex subroutine supposes hashref keys are sorted which is wrong with perl 5.18 Note that the t/db_dependent/Record.t fails without this patch. Test plan (for perl >= 5.18 only): 1/ prove t/db_dependent/Record.t should return green 2/ Try to export a record to bibtex and verify the order is correct (should be author, title, year, published, etc.). http://bugs.koha-community.org/show_bug.cgi?id=12409 Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Wrong Bug number on heading. Work as described, test pass, no koha-qa errors. The problem is to think that a hash returns keys in a particular order, that's not true and no matter which perl version. Code as was left is... misleading. Comments talks about a hash, which is no more. On array asignment "a => b" is equivalent to "a, b", but the former is usually used on hashes, so a replacement of '=>' by ',' could clarify what are we storing.
(In reply to Bernardo Gonzalez Kriegel from comment #2) > On array asignment "a => b" is equivalent to "a, b", > but the former is usually used on hashes, so a > replacement of '=>' by ',' could clarify what are we storing. It was deliberate. In my opinion, it is more readable like that.
But I really don't matter :)
Created attachment 29529 [details] [review] [PASSED QA] Bug 12409: Fix fields order on exporting to bibtex The C4::Record::marc2bibtex subroutine supposes hashref keys are sorted which is wrong with perl 5.18 Note that the t/db_dependent/Record.t fails without this patch. Test plan (for perl >= 5.18 only): 1/ prove t/db_dependent/Record.t should return green 2/ Try to export a record to bibtex and verify the order is correct (should be author, title, year, published, etc.). http://bugs.koha-community.org/show_bug.cgi?id=12409 Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Wrong Bug number on heading. Work as described, test pass, no koha-qa errors. The problem is to think that a hash returns keys in a particular order, that's not true and no matter which perl version. Code as was left is... misleading. Comments talks about a hash, which is no more. On array asignment "a => b" is equivalent to "a, b", but the former is usually used on hashes, so a replacement of '=>' by ',' could clarify what are we storing. Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de> Fixing the comments in a follow-up patch. Tests pass now without problems and records export ok.
Created attachment 29530 [details] [review] Bug 12409: Follow up - Reflect from hash to array in comments
Patch pushed to master. Thanks Yohann!
Pushed to 3.16.x for inclusion in 3.16.2.