Bugzilla – Attachment 8055 Details for
Bug 7661
Moving C4::tests to unit tests
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
patch.txt (text/plain), 31.36 KB, created by
Marcel de Rooy
on 2012-03-07 14:45:55 UTC
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Marcel de Rooy
Created:
2012-03-07 14:45:55 UTC
Size:
31.36 KB
patch
obsolete
>From a9b1cea613698a4c472db8604da24be616f789c5 Mon Sep 17 00:00:00 2001 >From: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> >Date: Wed, 7 Mar 2012 15:38:29 +0100 >Subject: [PATCH] 7661 Moving C4::tests to unit tests >Content-Type: text/plain; charset="utf-8" > >This is only a file moving patch. No behaviour changes. >--- > C4/tests/Record_test.pl | 141 -------------------- > C4/tests/testrecords/marc21_marc8.dat | 1 - > .../testrecords/marc21_marc8_combining_chars.dat | 1 - > C4/tests/testrecords/marc21_marc8_errors.dat | 1 - > C4/tests/testrecords/marc21_utf8.dat | 1 - > .../testrecords/marc21_utf8_combining_chars.dat | 1 - > C4/tests/testrecords/marcxml_utf8.xml | 44 ------ > .../testrecords/marcxml_utf8_entityencoded.xml | 46 ------- > t/db_dependent/Record/Record.t | 141 ++++++++++++++++++++ > t/db_dependent/Record/testrecords/marc21_marc8.dat | 1 + > .../testrecords/marc21_marc8_combining_chars.dat | 1 + > .../Record/testrecords/marc21_marc8_errors.dat | 1 + > t/db_dependent/Record/testrecords/marc21_utf8.dat | 1 + > .../testrecords/marc21_utf8_combining_chars.dat | 1 + > t/db_dependent/Record/testrecords/marcxml_utf8.xml | 44 ++++++ > .../testrecords/marcxml_utf8_entityencoded.xml | 46 +++++++ > 16 files changed, 236 insertions(+), 236 deletions(-) > delete mode 100755 C4/tests/Record_test.pl > delete mode 100644 C4/tests/testrecords/marc21_marc8.dat > delete mode 100644 C4/tests/testrecords/marc21_marc8_combining_chars.dat > delete mode 100644 C4/tests/testrecords/marc21_marc8_errors.dat > delete mode 100644 C4/tests/testrecords/marc21_utf8.dat > delete mode 100644 C4/tests/testrecords/marc21_utf8_combining_chars.dat > delete mode 100644 C4/tests/testrecords/marcxml_utf8.xml > delete mode 100644 C4/tests/testrecords/marcxml_utf8_entityencoded.xml > create mode 100755 t/db_dependent/Record/Record.t > create mode 100644 t/db_dependent/Record/testrecords/marc21_marc8.dat > create mode 100644 t/db_dependent/Record/testrecords/marc21_marc8_combining_chars.dat > create mode 100644 t/db_dependent/Record/testrecords/marc21_marc8_errors.dat > create mode 100644 t/db_dependent/Record/testrecords/marc21_utf8.dat > create mode 100644 t/db_dependent/Record/testrecords/marc21_utf8_combining_chars.dat > create mode 100644 t/db_dependent/Record/testrecords/marcxml_utf8.xml > create mode 100644 t/db_dependent/Record/testrecords/marcxml_utf8_entityencoded.xml > >diff --git a/C4/tests/Record_test.pl b/C4/tests/Record_test.pl >deleted file mode 100755 >index f7a65ab..0000000 >--- a/C4/tests/Record_test.pl >+++ /dev/null >@@ -1,141 +0,0 @@ >-#!/usr/bin/perl >-# >-# Copyright 2006 (C) LibLime >-# Joshua Ferraro <jmf@liblime.com> >-# >-# This file is part of Koha. >-# >-# Koha is free software; you can redistribute it and/or modify it under the >-# terms of the GNU General Public License as published by the Free Software >-# Foundation; either version 2 of the License, or (at your option) any later >-# version. >-# >-# Koha is distributed in the hope that it will be useful, but WITHOUT ANY >-# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR >-# A PARTICULAR PURPOSE. See the GNU General Public License for more details. >-# >-# You should have received a copy of the GNU General Public License along >-# with Koha; if not, write to the Free Software Foundation, Inc., >-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. >-# >-# >-use strict; >-use warnings; >- >-# specify the number of tests >-use Test::More tests => 23; >-#use C4::Context; >-use C4::Record; >- >-=head1 NAME >- >-Record_test.pl - test suite for Record.pm >- >-=head1 SYNOPSIS >- >-$ export KOHA_CONF=/path/to/koha.conf >-$ ./Record_test.pl >- >-=cut >- >-## FIXME: Preliminarily grab the modules dir so we can run this in context >- >-ok (1, 'module compiled'); >- >-# open some files for testing >-open MARC21MARC8,"testrecords/marc21_marc8.dat" or die $!; >-my $marc21_marc8; # = scalar (MARC21MARC8); >-foreach my $line (<MARC21MARC8>) { >- $marc21_marc8 .= $line; >-} >-$marc21_marc8 =~ s/\n$//; >-close MARC21MARC8; >- >-open (MARC21UTF8,"<:utf8","testrecords/marc21_utf8.dat") or die $!; >-my $marc21_utf8; >-foreach my $line (<MARC21UTF8>) { >- $marc21_utf8 .= $line; >-} >-$marc21_utf8 =~ s/\n$//; >-close MARC21UTF8; >- >-open MARC21MARC8COMBCHARS,"testrecords/marc21_marc8_combining_chars.dat" or die $!; >-my $marc21_marc8_combining_chars; >-foreach my $line(<MARC21MARC8COMBCHARS>) { >- $marc21_marc8_combining_chars.=$line; >-} >-$marc21_marc8_combining_chars =~ s/\n$//; #FIXME: why is a newline ending up here? >-close MARC21MARC8COMBCHARS; >- >-open (MARC21UTF8COMBCHARS,"<:utf8","testrecords/marc21_utf8_combining_chars.dat") or die $!; >-my $marc21_utf8_combining_chars; >-foreach my $line(<MARC21UTF8COMBCHARS>) { >- $marc21_utf8_combining_chars.=$line; >-} >-close MARC21UTF8COMBCHARS; >- >-open (MARCXMLUTF8,"<:utf8","testrecords/marcxml_utf8.xml") or die $!; >-my $marcxml_utf8; >-foreach my $line (<MARCXMLUTF8>) { >- $marcxml_utf8 .= $line; >-} >-close MARCXMLUTF8; >- >-$marcxml_utf8 =~ s/\n//g; >- >-## The Tests: >-my $error; my $marc; my $marcxml; my $dcxml; # some scalars to store values >-## MARC to MARCXML >-print "\n1. Checking conversion of simple ISO-2709 (MARC21) records to MARCXML\n"; >-ok (($error,$marcxml) = marc2marcxml($marc21_marc8,'UTF-8','MARC21'), 'marc2marcxml - from MARC-8 to UTF-8 (MARC21)'); >-ok (!$error, 'no errors in conversion'); >- $marcxml =~ s/\n//g; >- $marcxml =~ s/v\/ s/v\/s/g; # FIXME: bug in new_from_xml_record!! >-is ($marcxml,$marcxml_utf8, 'record matches antitype'); >- >-ok (($error,$marcxml) = marc2marcxml($marc21_utf8,'UTF-8','MARC21'), 'marc2marcxml - from UTF-8 to UTF-8 (MARC21)'); >-ok (!$error, 'no errors in conversion'); >- $marcxml =~ s/\n//g; >- $marcxml =~ s/v\/ s/v\/s/g; >-is ($marcxml,$marcxml_utf8, 'record matches antitype'); >- >-print "\n2. checking binary MARC21 records with combining characters to MARCXML\n"; >-ok (($error,$marcxml) = marc2marcxml($marc21_marc8_combining_chars,'MARC-8','MARC21'), 'marc2marcxml - from MARC-8 to MARC-8 with combining characters(MARC21)'); >-ok (!$error, 'no errors in conversion'); >- >-ok (($error,$marcxml) = marc2marcxml($marc21_marc8_combining_chars,'UTF-8','MARC21'), 'marc2marcxml - from MARC-8 to UTF-8 with combining characters (MARC21)'); >-ok (!$error, 'no errors in conversion'); >- >-ok (($error,$marcxml) = marc2marcxml($marc21_utf8_combining_chars,'UTF-8','MARC21'), 'marc2marcxml - from UTF-8 to UTF-8 with combining characters (MARC21)'); >-ok (!$error, 'no errors in conversion'); >- >-ok (($error,$dcxml) = marc2dcxml($marc21_utf8), 'marc2dcxml - from ISO-2709 to Dublin Core'); >-ok (!$error, 'no errors in conversion'); >- >-print "\n3. checking ability to alter encoding\n"; >-ok (($error,$marc) = changeEncoding($marc21_marc8,'MARC','MARC21','UTF-8'), 'changeEncoding - MARC21 from MARC-8 to UTF-8'); >-ok (!$error, 'no errors in conversion'); >- >-ok (($error,$marc) = changeEncoding($marc21_utf8,'MARC','MARC21','MARC-8'), 'changeEncoding - MARC21 from UTF-8 to MARC-8'); >-ok (!$error, 'no errors in conversion'); >- >-ok (($error,$marc) = changeEncoding($marc21_marc8,'MARC','MARC21','MARC-8'), 'changeEncoding - MARC21 from MARC-8 to MARC-8'); >-ok (!$error, 'no errors in conversion'); >- >-ok (($error,$marc) = changeEncoding($marc21_utf8,'MARC','MARC21','UTF-8'), 'changeEncoding - MARC21 from UTF-8 to UTF-8'); >-ok (!$error, 'no errors in conversion'); >- >-__END__ >- >-=head1 TODO >- >-Still lots more to test including UNIMARC support >- >-=head1 AUTHOR >- >-Joshua Ferraro <jmf@liblime.com> >- >-=head1 MODIFICATIONS >- >- >-=cut >diff --git a/C4/tests/testrecords/marc21_marc8.dat b/C4/tests/testrecords/marc21_marc8.dat >deleted file mode 100644 >index ac1f8dd..0000000 >--- a/C4/tests/testrecords/marc21_marc8.dat >+++ /dev/null >@@ -1 +0,0 @@ >-00463 2200169 450000100060000000300050000600500170001100800410002802000150006909000150008410000340009924500510013325000250018465000220020994200250023195200370025684893ACLS19990324000000.0930421s19xx xxu 00010 eng d a0854562702 c1738d17381 aChristie, Agatha,d1890-1976.10aWhy didn't they ask Evans? /cAgatha Christie. aLarge print edition. 0aLarge type books. aONecLPkLP Christie bNPLp31000000010273r12.00u2148 >diff --git a/C4/tests/testrecords/marc21_marc8_combining_chars.dat b/C4/tests/testrecords/marc21_marc8_combining_chars.dat >deleted file mode 100644 >index 0991ec9..0000000 >--- a/C4/tests/testrecords/marc21_marc8_combining_chars.dat >+++ /dev/null >@@ -1 +0,0 @@ >-01442cam 2200373 a 4500001001300000003000600013005001700019008004100036010001700077040002500094016001900119020004200138029002100180050002800201082002300229084001500252092001700267049000800284245015300292260007900445300002800524440015300552500003000705500002200735650005600757650007000813650005700883650002500940650002100965650002500986700003001011942001501041994001201056ocm11030895 OCoLC20060516100102.0840720s1984 ne b 001 0 eng a 83048926 aDLCcDLCdMUQdNLGGC aB84431862bccb a0800606035 (Fortress Press) :c$35.951 aNLGGCb84037516600aBM485b.L57 1984 vol. 200a296.1 sa296.1219 a11.372bcl0 a296.1bST66 aWN300aJewish writings of the Second Temple period :bApocrypha, Pseudepigrapha, Qumran, sectarian writings, Philo, Josephus /cedited by Michael E. Stone. aAssen, Netherlands :bVan Gorcum ;aPhiladelphia :bFortress Press,c1984. axxiii, 697 p. ;c25 cm. 0aCompendia rerum Iudaicarum ad Novum Testamentum.nSection 2,pLiterature of the Jewish people in the period of the Second Temple and the Talmud ;v2 aBibliography: p. 603-653. aIncludes indexes. 0aJewish religious literaturexHistory and criticism. 0aJudaismxHistoryyPost-exilic period, 586 B.C.-210 A.D.xSources. 6aLittâerature religieuse juivexHistoire et critique.17aOude Testament.2gtt17aApocriefen.2gtt17aDode-Zeerollen.2gtt1 aStone, Michael E.,d1938- k296.1 ST66 aC0bWN3 >diff --git a/C4/tests/testrecords/marc21_marc8_errors.dat b/C4/tests/testrecords/marc21_marc8_errors.dat >deleted file mode 100644 >index f7ea2aa..0000000 >--- a/C4/tests/testrecords/marc21_marc8_errors.dat >+++ /dev/null >@@ -1 +0,0 @@ >-00462 2200169 450000100060000000300050000600500170001100800410002802000150006909000150008410000340009924500510013325000250018465000220020994200250023195200370025684893ACLS19990324000000.0930421s19xx xxu 00010 eng d a0854562702 c1738d17381 aChristie, Agatha,d1890-1976.10aWhy didn't they ask Evans? /cAgatha Christie. aLarge print edition. 0aLarge type books. aONecLPkLP Christie bNPLp31000000010273r12.00u2148 >diff --git a/C4/tests/testrecords/marc21_utf8.dat b/C4/tests/testrecords/marc21_utf8.dat >deleted file mode 100644 >index 0061c84..0000000 >--- a/C4/tests/testrecords/marc21_utf8.dat >+++ /dev/null >@@ -1 +0,0 @@ >-00463 a2200169 450000100060000000300050000600500170001100800410002802000150006909000150008410000340009924500510013325000250018465000220020994200250023195200370025684893ACLS19990324000000.0930421s19xx xxu 00010 eng d a0854562702 c1738d17381 aChristie, Agatha,d1890-1976.10aWhy didn't they ask Evans? /cAgatha Christie. aLarge print edition. 0aLarge type books. aONecLPkLP Christie bNPLp31000000010273r12.00u2148 >\ No newline at end of file >diff --git a/C4/tests/testrecords/marc21_utf8_combining_chars.dat b/C4/tests/testrecords/marc21_utf8_combining_chars.dat >deleted file mode 100644 >index 5ae3740..0000000 >--- a/C4/tests/testrecords/marc21_utf8_combining_chars.dat >+++ /dev/null >@@ -1 +0,0 @@ >-01442cam a2200373 a 4500001001300000003000600013005001700019008004100036010001700077040002500094016001900119020004200138029002100180050002800201082002300229084001500252092001700267049000800284245015300292260007900445300002800524440015300552500003000705500002200735650005600757650007000813650005700883650002500940650002100965650002500986700003001011942001501041994001201056ocm11030895 OCoLC20060516100102.0840720s1984 ne b 001 0 eng a 83048926 aDLCcDLCdMUQdNLGGC aB84431862bccb a0800606035 (Fortress Press) :c$35.951 aNLGGCb84037516600aBM485b.L57 1984 vol. 200a296.1 sa296.1219 a11.372bcl0 a296.1bST66 aWN300aJewish writings of the Second Temple period :bApocrypha, Pseudepigrapha, Qumran, sectarian writings, Philo, Josephus /cedited by Michael E. Stone. aAssen, Netherlands :bVan Gorcum ;aPhiladelphia :bFortress Press,c1984. axxiii, 697 p. ;c25 cm. 0aCompendia rerum Iudaicarum ad Novum Testamentum.nSection 2,pLiterature of the Jewish people in the period of the Second Temple and the Talmud ;v2 aBibliography: p. 603-653. aIncludes indexes. 0aJewish religious literaturexHistory and criticism. 0aJudaismxHistoryyPost-exilic period, 586 B.C.-210 A.D.xSources. 6aLittérature religieuse juivexHistoire et critique.17aOude Testament.2gtt17aApocriefen.2gtt17aDode-Zeerollen.2gtt1 aStone, Michael E.,d1938- k296.1 ST66 aC0bWN3 >\ No newline at end of file >diff --git a/C4/tests/testrecords/marcxml_utf8.xml b/C4/tests/testrecords/marcxml_utf8.xml >deleted file mode 100644 >index 7e30aaa..0000000 >--- a/C4/tests/testrecords/marcxml_utf8.xml >+++ /dev/null >@@ -1,44 +0,0 @@ >-<?xml version="1.0" encoding="UTF-8"?> >-<record >- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >- xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd" >- xmlns="http://www.loc.gov/MARC21/slim"> >- >- <leader>00463 a2200169 4500</leader> >- <controlfield tag="001">84893</controlfield> >- <controlfield tag="003">ACLS</controlfield> >- <controlfield tag="005">19990324000000.0</controlfield> >- <controlfield tag="008">930421s19xx xxu 00010 eng d</controlfield> >- <datafield tag="020" ind1=" " ind2=" "> >- <subfield code="a">0854562702</subfield> >- </datafield> >- <datafield tag="090" ind1=" " ind2=" "> >- <subfield code="c">1738</subfield> >- <subfield code="d">1738</subfield> >- </datafield> >- <datafield tag="100" ind1="1" ind2=" "> >- <subfield code="a">Christie, Agatha,</subfield> >- <subfield code="d">1890-1976.</subfield> >- </datafield> >- <datafield tag="245" ind1="1" ind2="0"> >- <subfield code="a">Why didn't they ask Evans? /</subfield> >- <subfield code="c">Agatha Christie.</subfield> >- </datafield> >- <datafield tag="250" ind1=" " ind2=" "> >- <subfield code="a">Large print edition.</subfield> >- </datafield> >- <datafield tag="650" ind1=" " ind2="0"> >- <subfield code="a">Large type books.</subfield> >- </datafield> >- <datafield tag="942" ind1=" " ind2=" "> >- <subfield code="a">ONe</subfield> >- <subfield code="c">LP</subfield> >- <subfield code="k">LP Christie</subfield> >- </datafield> >- <datafield tag="952" ind1=" " ind2=" "> >- <subfield code="b">NPL</subfield> >- <subfield code="p">31000000010273</subfield> >- <subfield code="r">12.00</subfield> >- <subfield code="u">2148</subfield> >- </datafield> >-</record> >diff --git a/C4/tests/testrecords/marcxml_utf8_entityencoded.xml b/C4/tests/testrecords/marcxml_utf8_entityencoded.xml >deleted file mode 100644 >index 53766f3..0000000 >--- a/C4/tests/testrecords/marcxml_utf8_entityencoded.xml >+++ /dev/null >@@ -1,46 +0,0 @@ >-<?xml version="1.0" encoding="UTF-8"?> >-<collection >- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >- xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd" >- xmlns="http://www.loc.gov/MARC21/slim"> >- >-<record> >- <leader>00463 a2200169 4500</leader> >- <controlfield tag="001">84893</controlfield> >- <controlfield tag="003">ACLS</controlfield> >- <controlfield tag="005">19990324000000.0</controlfield> >- <controlfield tag="008">930421s19xx xxu 00010 eng d</controlfield> >- <datafield tag="020" ind1=" " ind2=" "> >- <subfield code="a">0854562702</subfield> >- </datafield> >- <datafield tag="090" ind1=" " ind2=" "> >- <subfield code="c">1738</subfield> >- <subfield code="d">1738</subfield> >- </datafield> >- <datafield tag="100" ind1="1" ind2=" "> >- <subfield code="a">Christie, Agatha,</subfield> >- <subfield code="d">1890-1976.</subfield> >- </datafield> >- <datafield tag="245" ind1="1" ind2="0"> >- <subfield code="a">Why didn't they ask Evans? /</subfield> >- <subfield code="c">Agatha Christie.</subfield> >- </datafield> >- <datafield tag="250" ind1=" " ind2=" "> >- <subfield code="a">Large print edition.</subfield> >- </datafield> >- <datafield tag="650" ind1=" " ind2="0"> >- <subfield code="a">Large type books.</subfield> >- </datafield> >- <datafield tag="942" ind1=" " ind2=" "> >- <subfield code="a">ONe</subfield> >- <subfield code="c">LP</subfield> >- <subfield code="k">LP Christie</subfield> >- </datafield> >- <datafield tag="952" ind1=" " ind2=" "> >- <subfield code="b">NPL</subfield> >- <subfield code="p">31000000010273</subfield> >- <subfield code="r">12.00</subfield> >- <subfield code="u">2148</subfield> >- </datafield> >-</record> >-</collection> >diff --git a/t/db_dependent/Record/Record.t b/t/db_dependent/Record/Record.t >new file mode 100755 >index 0000000..f7a65ab >--- /dev/null >+++ b/t/db_dependent/Record/Record.t >@@ -0,0 +1,141 @@ >+#!/usr/bin/perl >+# >+# Copyright 2006 (C) LibLime >+# Joshua Ferraro <jmf@liblime.com> >+# >+# This file is part of Koha. >+# >+# Koha is free software; you can redistribute it and/or modify it under the >+# terms of the GNU General Public License as published by the Free Software >+# Foundation; either version 2 of the License, or (at your option) any later >+# version. >+# >+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY >+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR >+# A PARTICULAR PURPOSE. See the GNU General Public License for more details. >+# >+# You should have received a copy of the GNU General Public License along >+# with Koha; if not, write to the Free Software Foundation, Inc., >+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. >+# >+# >+use strict; >+use warnings; >+ >+# specify the number of tests >+use Test::More tests => 23; >+#use C4::Context; >+use C4::Record; >+ >+=head1 NAME >+ >+Record_test.pl - test suite for Record.pm >+ >+=head1 SYNOPSIS >+ >+$ export KOHA_CONF=/path/to/koha.conf >+$ ./Record_test.pl >+ >+=cut >+ >+## FIXME: Preliminarily grab the modules dir so we can run this in context >+ >+ok (1, 'module compiled'); >+ >+# open some files for testing >+open MARC21MARC8,"testrecords/marc21_marc8.dat" or die $!; >+my $marc21_marc8; # = scalar (MARC21MARC8); >+foreach my $line (<MARC21MARC8>) { >+ $marc21_marc8 .= $line; >+} >+$marc21_marc8 =~ s/\n$//; >+close MARC21MARC8; >+ >+open (MARC21UTF8,"<:utf8","testrecords/marc21_utf8.dat") or die $!; >+my $marc21_utf8; >+foreach my $line (<MARC21UTF8>) { >+ $marc21_utf8 .= $line; >+} >+$marc21_utf8 =~ s/\n$//; >+close MARC21UTF8; >+ >+open MARC21MARC8COMBCHARS,"testrecords/marc21_marc8_combining_chars.dat" or die $!; >+my $marc21_marc8_combining_chars; >+foreach my $line(<MARC21MARC8COMBCHARS>) { >+ $marc21_marc8_combining_chars.=$line; >+} >+$marc21_marc8_combining_chars =~ s/\n$//; #FIXME: why is a newline ending up here? >+close MARC21MARC8COMBCHARS; >+ >+open (MARC21UTF8COMBCHARS,"<:utf8","testrecords/marc21_utf8_combining_chars.dat") or die $!; >+my $marc21_utf8_combining_chars; >+foreach my $line(<MARC21UTF8COMBCHARS>) { >+ $marc21_utf8_combining_chars.=$line; >+} >+close MARC21UTF8COMBCHARS; >+ >+open (MARCXMLUTF8,"<:utf8","testrecords/marcxml_utf8.xml") or die $!; >+my $marcxml_utf8; >+foreach my $line (<MARCXMLUTF8>) { >+ $marcxml_utf8 .= $line; >+} >+close MARCXMLUTF8; >+ >+$marcxml_utf8 =~ s/\n//g; >+ >+## The Tests: >+my $error; my $marc; my $marcxml; my $dcxml; # some scalars to store values >+## MARC to MARCXML >+print "\n1. Checking conversion of simple ISO-2709 (MARC21) records to MARCXML\n"; >+ok (($error,$marcxml) = marc2marcxml($marc21_marc8,'UTF-8','MARC21'), 'marc2marcxml - from MARC-8 to UTF-8 (MARC21)'); >+ok (!$error, 'no errors in conversion'); >+ $marcxml =~ s/\n//g; >+ $marcxml =~ s/v\/ s/v\/s/g; # FIXME: bug in new_from_xml_record!! >+is ($marcxml,$marcxml_utf8, 'record matches antitype'); >+ >+ok (($error,$marcxml) = marc2marcxml($marc21_utf8,'UTF-8','MARC21'), 'marc2marcxml - from UTF-8 to UTF-8 (MARC21)'); >+ok (!$error, 'no errors in conversion'); >+ $marcxml =~ s/\n//g; >+ $marcxml =~ s/v\/ s/v\/s/g; >+is ($marcxml,$marcxml_utf8, 'record matches antitype'); >+ >+print "\n2. checking binary MARC21 records with combining characters to MARCXML\n"; >+ok (($error,$marcxml) = marc2marcxml($marc21_marc8_combining_chars,'MARC-8','MARC21'), 'marc2marcxml - from MARC-8 to MARC-8 with combining characters(MARC21)'); >+ok (!$error, 'no errors in conversion'); >+ >+ok (($error,$marcxml) = marc2marcxml($marc21_marc8_combining_chars,'UTF-8','MARC21'), 'marc2marcxml - from MARC-8 to UTF-8 with combining characters (MARC21)'); >+ok (!$error, 'no errors in conversion'); >+ >+ok (($error,$marcxml) = marc2marcxml($marc21_utf8_combining_chars,'UTF-8','MARC21'), 'marc2marcxml - from UTF-8 to UTF-8 with combining characters (MARC21)'); >+ok (!$error, 'no errors in conversion'); >+ >+ok (($error,$dcxml) = marc2dcxml($marc21_utf8), 'marc2dcxml - from ISO-2709 to Dublin Core'); >+ok (!$error, 'no errors in conversion'); >+ >+print "\n3. checking ability to alter encoding\n"; >+ok (($error,$marc) = changeEncoding($marc21_marc8,'MARC','MARC21','UTF-8'), 'changeEncoding - MARC21 from MARC-8 to UTF-8'); >+ok (!$error, 'no errors in conversion'); >+ >+ok (($error,$marc) = changeEncoding($marc21_utf8,'MARC','MARC21','MARC-8'), 'changeEncoding - MARC21 from UTF-8 to MARC-8'); >+ok (!$error, 'no errors in conversion'); >+ >+ok (($error,$marc) = changeEncoding($marc21_marc8,'MARC','MARC21','MARC-8'), 'changeEncoding - MARC21 from MARC-8 to MARC-8'); >+ok (!$error, 'no errors in conversion'); >+ >+ok (($error,$marc) = changeEncoding($marc21_utf8,'MARC','MARC21','UTF-8'), 'changeEncoding - MARC21 from UTF-8 to UTF-8'); >+ok (!$error, 'no errors in conversion'); >+ >+__END__ >+ >+=head1 TODO >+ >+Still lots more to test including UNIMARC support >+ >+=head1 AUTHOR >+ >+Joshua Ferraro <jmf@liblime.com> >+ >+=head1 MODIFICATIONS >+ >+ >+=cut >diff --git a/t/db_dependent/Record/testrecords/marc21_marc8.dat b/t/db_dependent/Record/testrecords/marc21_marc8.dat >new file mode 100644 >index 0000000..ac1f8dd >--- /dev/null >+++ b/t/db_dependent/Record/testrecords/marc21_marc8.dat >@@ -0,0 +1 @@ >+00463 2200169 450000100060000000300050000600500170001100800410002802000150006909000150008410000340009924500510013325000250018465000220020994200250023195200370025684893ACLS19990324000000.0930421s19xx xxu 00010 eng d a0854562702 c1738d17381 aChristie, Agatha,d1890-1976.10aWhy didn't they ask Evans? /cAgatha Christie. aLarge print edition. 0aLarge type books. aONecLPkLP Christie bNPLp31000000010273r12.00u2148 >diff --git a/t/db_dependent/Record/testrecords/marc21_marc8_combining_chars.dat b/t/db_dependent/Record/testrecords/marc21_marc8_combining_chars.dat >new file mode 100644 >index 0000000..0991ec9 >--- /dev/null >+++ b/t/db_dependent/Record/testrecords/marc21_marc8_combining_chars.dat >@@ -0,0 +1 @@ >+01442cam 2200373 a 4500001001300000003000600013005001700019008004100036010001700077040002500094016001900119020004200138029002100180050002800201082002300229084001500252092001700267049000800284245015300292260007900445300002800524440015300552500003000705500002200735650005600757650007000813650005700883650002500940650002100965650002500986700003001011942001501041994001201056ocm11030895 OCoLC20060516100102.0840720s1984 ne b 001 0 eng a 83048926 aDLCcDLCdMUQdNLGGC aB84431862bccb a0800606035 (Fortress Press) :c$35.951 aNLGGCb84037516600aBM485b.L57 1984 vol. 200a296.1 sa296.1219 a11.372bcl0 a296.1bST66 aWN300aJewish writings of the Second Temple period :bApocrypha, Pseudepigrapha, Qumran, sectarian writings, Philo, Josephus /cedited by Michael E. Stone. aAssen, Netherlands :bVan Gorcum ;aPhiladelphia :bFortress Press,c1984. axxiii, 697 p. ;c25 cm. 0aCompendia rerum Iudaicarum ad Novum Testamentum.nSection 2,pLiterature of the Jewish people in the period of the Second Temple and the Talmud ;v2 aBibliography: p. 603-653. aIncludes indexes. 0aJewish religious literaturexHistory and criticism. 0aJudaismxHistoryyPost-exilic period, 586 B.C.-210 A.D.xSources. 6aLittâerature religieuse juivexHistoire et critique.17aOude Testament.2gtt17aApocriefen.2gtt17aDode-Zeerollen.2gtt1 aStone, Michael E.,d1938- k296.1 ST66 aC0bWN3 >diff --git a/t/db_dependent/Record/testrecords/marc21_marc8_errors.dat b/t/db_dependent/Record/testrecords/marc21_marc8_errors.dat >new file mode 100644 >index 0000000..f7ea2aa >--- /dev/null >+++ b/t/db_dependent/Record/testrecords/marc21_marc8_errors.dat >@@ -0,0 +1 @@ >+00462 2200169 450000100060000000300050000600500170001100800410002802000150006909000150008410000340009924500510013325000250018465000220020994200250023195200370025684893ACLS19990324000000.0930421s19xx xxu 00010 eng d a0854562702 c1738d17381 aChristie, Agatha,d1890-1976.10aWhy didn't they ask Evans? /cAgatha Christie. aLarge print edition. 0aLarge type books. aONecLPkLP Christie bNPLp31000000010273r12.00u2148 >diff --git a/t/db_dependent/Record/testrecords/marc21_utf8.dat b/t/db_dependent/Record/testrecords/marc21_utf8.dat >new file mode 100644 >index 0000000..0061c84 >--- /dev/null >+++ b/t/db_dependent/Record/testrecords/marc21_utf8.dat >@@ -0,0 +1 @@ >+00463 a2200169 450000100060000000300050000600500170001100800410002802000150006909000150008410000340009924500510013325000250018465000220020994200250023195200370025684893ACLS19990324000000.0930421s19xx xxu 00010 eng d a0854562702 c1738d17381 aChristie, Agatha,d1890-1976.10aWhy didn't they ask Evans? /cAgatha Christie. aLarge print edition. 0aLarge type books. aONecLPkLP Christie bNPLp31000000010273r12.00u2148 >\ No newline at end of file >diff --git a/t/db_dependent/Record/testrecords/marc21_utf8_combining_chars.dat b/t/db_dependent/Record/testrecords/marc21_utf8_combining_chars.dat >new file mode 100644 >index 0000000..5ae3740 >--- /dev/null >+++ b/t/db_dependent/Record/testrecords/marc21_utf8_combining_chars.dat >@@ -0,0 +1 @@ >+01442cam a2200373 a 4500001001300000003000600013005001700019008004100036010001700077040002500094016001900119020004200138029002100180050002800201082002300229084001500252092001700267049000800284245015300292260007900445300002800524440015300552500003000705500002200735650005600757650007000813650005700883650002500940650002100965650002500986700003001011942001501041994001201056ocm11030895 OCoLC20060516100102.0840720s1984 ne b 001 0 eng a 83048926 aDLCcDLCdMUQdNLGGC aB84431862bccb a0800606035 (Fortress Press) :c$35.951 aNLGGCb84037516600aBM485b.L57 1984 vol. 200a296.1 sa296.1219 a11.372bcl0 a296.1bST66 aWN300aJewish writings of the Second Temple period :bApocrypha, Pseudepigrapha, Qumran, sectarian writings, Philo, Josephus /cedited by Michael E. Stone. aAssen, Netherlands :bVan Gorcum ;aPhiladelphia :bFortress Press,c1984. axxiii, 697 p. ;c25 cm. 0aCompendia rerum Iudaicarum ad Novum Testamentum.nSection 2,pLiterature of the Jewish people in the period of the Second Temple and the Talmud ;v2 aBibliography: p. 603-653. aIncludes indexes. 0aJewish religious literaturexHistory and criticism. 0aJudaismxHistoryyPost-exilic period, 586 B.C.-210 A.D.xSources. 6aLittérature religieuse juivexHistoire et critique.17aOude Testament.2gtt17aApocriefen.2gtt17aDode-Zeerollen.2gtt1 aStone, Michael E.,d1938- k296.1 ST66 aC0bWN3 >\ No newline at end of file >diff --git a/t/db_dependent/Record/testrecords/marcxml_utf8.xml b/t/db_dependent/Record/testrecords/marcxml_utf8.xml >new file mode 100644 >index 0000000..7e30aaa >--- /dev/null >+++ b/t/db_dependent/Record/testrecords/marcxml_utf8.xml >@@ -0,0 +1,44 @@ >+<?xml version="1.0" encoding="UTF-8"?> >+<record >+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >+ xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd" >+ xmlns="http://www.loc.gov/MARC21/slim"> >+ >+ <leader>00463 a2200169 4500</leader> >+ <controlfield tag="001">84893</controlfield> >+ <controlfield tag="003">ACLS</controlfield> >+ <controlfield tag="005">19990324000000.0</controlfield> >+ <controlfield tag="008">930421s19xx xxu 00010 eng d</controlfield> >+ <datafield tag="020" ind1=" " ind2=" "> >+ <subfield code="a">0854562702</subfield> >+ </datafield> >+ <datafield tag="090" ind1=" " ind2=" "> >+ <subfield code="c">1738</subfield> >+ <subfield code="d">1738</subfield> >+ </datafield> >+ <datafield tag="100" ind1="1" ind2=" "> >+ <subfield code="a">Christie, Agatha,</subfield> >+ <subfield code="d">1890-1976.</subfield> >+ </datafield> >+ <datafield tag="245" ind1="1" ind2="0"> >+ <subfield code="a">Why didn't they ask Evans? /</subfield> >+ <subfield code="c">Agatha Christie.</subfield> >+ </datafield> >+ <datafield tag="250" ind1=" " ind2=" "> >+ <subfield code="a">Large print edition.</subfield> >+ </datafield> >+ <datafield tag="650" ind1=" " ind2="0"> >+ <subfield code="a">Large type books.</subfield> >+ </datafield> >+ <datafield tag="942" ind1=" " ind2=" "> >+ <subfield code="a">ONe</subfield> >+ <subfield code="c">LP</subfield> >+ <subfield code="k">LP Christie</subfield> >+ </datafield> >+ <datafield tag="952" ind1=" " ind2=" "> >+ <subfield code="b">NPL</subfield> >+ <subfield code="p">31000000010273</subfield> >+ <subfield code="r">12.00</subfield> >+ <subfield code="u">2148</subfield> >+ </datafield> >+</record> >diff --git a/t/db_dependent/Record/testrecords/marcxml_utf8_entityencoded.xml b/t/db_dependent/Record/testrecords/marcxml_utf8_entityencoded.xml >new file mode 100644 >index 0000000..53766f3 >--- /dev/null >+++ b/t/db_dependent/Record/testrecords/marcxml_utf8_entityencoded.xml >@@ -0,0 +1,46 @@ >+<?xml version="1.0" encoding="UTF-8"?> >+<collection >+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >+ xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd" >+ xmlns="http://www.loc.gov/MARC21/slim"> >+ >+<record> >+ <leader>00463 a2200169 4500</leader> >+ <controlfield tag="001">84893</controlfield> >+ <controlfield tag="003">ACLS</controlfield> >+ <controlfield tag="005">19990324000000.0</controlfield> >+ <controlfield tag="008">930421s19xx xxu 00010 eng d</controlfield> >+ <datafield tag="020" ind1=" " ind2=" "> >+ <subfield code="a">0854562702</subfield> >+ </datafield> >+ <datafield tag="090" ind1=" " ind2=" "> >+ <subfield code="c">1738</subfield> >+ <subfield code="d">1738</subfield> >+ </datafield> >+ <datafield tag="100" ind1="1" ind2=" "> >+ <subfield code="a">Christie, Agatha,</subfield> >+ <subfield code="d">1890-1976.</subfield> >+ </datafield> >+ <datafield tag="245" ind1="1" ind2="0"> >+ <subfield code="a">Why didn't they ask Evans? /</subfield> >+ <subfield code="c">Agatha Christie.</subfield> >+ </datafield> >+ <datafield tag="250" ind1=" " ind2=" "> >+ <subfield code="a">Large print edition.</subfield> >+ </datafield> >+ <datafield tag="650" ind1=" " ind2="0"> >+ <subfield code="a">Large type books.</subfield> >+ </datafield> >+ <datafield tag="942" ind1=" " ind2=" "> >+ <subfield code="a">ONe</subfield> >+ <subfield code="c">LP</subfield> >+ <subfield code="k">LP Christie</subfield> >+ </datafield> >+ <datafield tag="952" ind1=" " ind2=" "> >+ <subfield code="b">NPL</subfield> >+ <subfield code="p">31000000010273</subfield> >+ <subfield code="r">12.00</subfield> >+ <subfield code="u">2148</subfield> >+ </datafield> >+</record> >+</collection> >-- >1.6.0.6 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 7661
:
8055
|
8067
|
8201