[Koha-patches] [PATCH] Bug 11540: (folowup) add a couple of tests more

Tomas Cohen Arazi tomascohen at gmail.com
Tue Jan 14 15:53:15 CET 2014


This patch makes sure all scenarios are covered for SetUTF8Flag.

Regards
To+
---
 t/Charset.t | 44 ++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 40 insertions(+), 4 deletions(-)

diff --git a/t/Charset.t b/t/Charset.t
index 8debbd7..27b2a32 100755
--- a/t/Charset.t
+++ b/t/Charset.t
@@ -1,9 +1,25 @@
 #!/usr/bin/perl
 
-use strict;
-use warnings;
+# 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 3 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, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 10;
+use MARC::Record;
 
-use Test::More tests => 7;
 BEGIN {
     use_ok('C4::Charset');
 }
@@ -19,4 +35,24 @@ ok(!utf8::is_utf8($octets), "verify that IsStringUTF8ish does not magically turn
 $octets = "a\xc2" . "c";
 ok(!IsStringUTF8ish($octets), "verify octets are not valid UTF-8");
 
-ok(!SetUTF8Flag(), 'Testing SetUTF8Flag' );
+ok( !SetUTF8Flag(), 'SetUTF8Flag returns undef if no record passed' );
+
+my $record = MARC::Record->new();
+ok( !SetUTF8Flag($record), 'SetUTF8Flag returns undef if the record has no subfields' );
+# Add some fields/subfields
+$record->append_fields(
+    MARC::Field->new('100', ' ', ' ', a => 'Julio Cortazar'),
+    MARC::Field->new('245', ' ', ' ', a => 'Rayuela'),
+);
+# Verify our data serves its purpose
+ok( !utf8::is_utf8($record->subfield('100','a')) &&
+    !utf8::is_utf8($record->subfield('245','a')),
+    'Verify that the subfields are NOT set the UTF-8 flag yet' );
+
+SetUTF8Flag($record);
+
+ok( utf8::is_utf8($record->subfield('100','a')) &&
+    utf8::is_utf8($record->subfield('245','a')),
+    'SetUTF8Flag sets the UTF-8 flag to all subfields' );
+
+1;
-- 
1.8.3.2



More information about the Koha-patches mailing list