$70 GRAYBYTE WORDPRESS FILE MANAGER $20

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 104.21.43.35 | ADMIN IP 216.73.216.180
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : mail

/opt/alt/php52/usr/share/pear/test/File_MARC/tests/

HOME
Current File : /opt/alt/php52/usr/share/pear/test/File_MARC/tests//marc_lint_004.phpt
--TEST--
marc_lint_004: Tests check_245() called separately
--SKIPIF--
<?php include('skipif.inc'); ?>
<?php include('skipif_noispn.inc'); ?>
--FILE--
<?php
$dir = dirname(__FILE__);
require 'File/MARC.php';
require 'File/MARC/Lint.php';

// Create test harness to allow direct calls to check methods:
class File_MARC_Lint_Test_Harness extends File_MARC_Lint
{
    public function check245($field)
    {
        return parent::check245($field);
    }

    // override warn method to echo instead of store in object:
    protected function warn($msg)
    {
        echo $msg . "\n";
    }
}

$marc_lint = new File_MARC_Lint_Test_Harness();

$testData = array(
    array(245, '0', '0', 'a', 'Subfield a.'),
    array(245, '0', '0', 'b', 'no subfield a.'),
    array(245, '0', '0', 'a', 'No period at end'),
    array(245, '0', '0', 'a', 'Other punctuation not followed by period!'),
    array(245, '0', '0', 'a', 'Other punctuation not followed by period?'),
    array(245, '0', '0', 'a', 'Precedes sub c', 'c', 'not preceded by space-slash.'),
    array(245, '0', '0', 'a', 'Precedes sub c/', 'c', 'not preceded by space-slash.'),
    array(245, '0', '0', 'a', 'Precedes sub c /', 'c', 'initials in sub c B. B.'),
    array(245, '0', '0', 'a', 'Precedes sub c /', 'c', 'initials in sub c B.B. (no warning).'),
    array(245, '0', '0', 'a', 'Precedes sub b', 'b', 'not preceded by proper punctuation.'),
    array(245, '0', '0', 'a', 'Precedes sub b=', 'b', 'not preceded by proper punctuation.'),
    array(245, '0', '0', 'a', 'Precedes sub b:', 'b', 'not preceded by proper punctuation.'),
    array(245, '0', '0', 'a', 'Precedes sub b;', 'b', 'not preceded by proper punctuation.'),
    array(245, '0', '0', 'a', 'Precedes sub b =', 'b', 'preceded by proper punctuation.'),
    array(245, '0', '0', 'a', 'Precedes sub b :', 'b', 'preceded by proper punctuation.'),
    array(245, '0', '0', 'a', 'Precedes sub b ;', 'b', 'preceded by proper punctuation.'),
    array(245, '0', '0', 'a', 'Precedes sub h ', 'h', '[videorecording].'),
    array(245, '0', '0', 'a', 'Precedes sub h-- ', 'h', '[videorecording] :', 'b', 'with elipses dash before h.'),
    array(245, '0', '0', 'a', 'Precedes sub h-- ', 'h', 'videorecording :', 'b', 'without brackets around GMD.'),
    array(245, '0', '0', 'a', 'Precedes sub n.', 'n', 'Number 1.'),
    array(245, '0', '0', 'a', 'Precedes sub n', 'n', 'Number 2.'),
    array(245, '0', '0', 'a', 'Precedes sub n.', 'n', 'Number 3.', 'p', 'Sub n has period not comma.'),
    array(245, '0', '0', 'a', 'Precedes sub n.', 'n', 'Number 3,', 'p', 'Sub n has comma.'),
    array(245, '0', '0', 'a', 'Precedes sub p.', 'p', 'Sub a has period.'),
    array(245, '0', '0', 'a', 'Precedes sub p', 'p', 'Sub a has no period.'),
    array(245, '0', 'a', 'a', 'Invalid filing indicator.'),
    array(245, '0', '0', 'a', 'The article.'),
    array(245, '0', '4', 'a', 'The article.'),
    array(245, '0', '2', 'a', 'An article.'),
    array(245, '0', '0', 'a', "L'article."),
    array(245, '0', '2', 'a', 'A la mode.'),
    array(245, '0', '5', 'a', 'The "quoted article".'),
    array(245, '0', '5', 'a', 'The (parenthetical article).'),
    array(245, '0', '6', 'a', '(The) article in parentheses).'),
    array(245, '0', '9', 'a', "\"(The)\" 'article' in quotes and parentheses)."),
    array(245, '0', '5', 'a', '[The supplied title].')
);

foreach ($testData as $current) {
    $subfields = array();
    for ($i = 3; $i < count($current); $i+=2) {
        $subfields[] = new File_MARC_Subfield($current[$i], $current[$i+1]);
    }

    $field = new File_MARC_Data_Field(
        $current[0], $subfields, $current[1], $current[2]
    );
    $marc_lint->check245($field);
}

?>
--EXPECT--
245: Must have a subfield _a.
245: First subfield must be _a, but it is _b
245: Must end with . (period).
245: MARC21 allows ? or ! as final punctuation but LCRI 1.0C, Nov. 2003, requires period.
245: MARC21 allows ? or ! as final punctuation but LCRI 1.0C, Nov. 2003, requires period.
245: Subfield _c must be preceded by /
245: Subfield _c must be preceded by /
245: Subfield _c initials should not have a space.
245: Subfield _b should be preceded by space-colon, space-semicolon, or space-equals sign.
245: Subfield _b should be preceded by space-colon, space-semicolon, or space-equals sign.
245: Subfield _b should be preceded by space-colon, space-semicolon, or space-equals sign.
245: Subfield _b should be preceded by space-colon, space-semicolon, or space-equals sign.
245: Subfield _h should not be preceded by space.
245: Subfield _h must have matching square brackets, videorecording :.
245: Subfield _n must be preceded by . (period).
245: Subfield _p must be preceded by , (comma) when it follows subfield _n.
245: Subfield _p must be preceded by . (period) when it follows a subfield other than _n.
245: Non-filing indicator is non-numeric
245: First word, the, may be an article, check 2nd indicator (0).
245: First word, an, may be an article, check 2nd indicator (2).
245: First word, l, may be an article, check 2nd indicator (0).
245: First word, a, does not appear to be an article, check 2nd indicator (2).


Current_dir [ NOT WRITEABLE ] Document_root [ NOT WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
3 Mar 2024 10.54 PM
root / root
0755
bad_example.mrc
1.81 KB
2 Dec 2021 8.06 AM
root / root
0644
bad_example.xml
7.109 KB
2 Dec 2021 8.06 AM
root / root
0644
bigarchive.xml
3.432 KB
2 Dec 2021 8.06 AM
root / root
0644
camel.mrc
6.826 KB
2 Dec 2021 8.06 AM
root / root
0644
example.mrc
1.807 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_001.phpt
2.432 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_002.phpt
4.58 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_003.phpt
1.335 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_004.phpt
9.332 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_005.phpt
3.404 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_006.phpt
1.268 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_007.phpt
1.163 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_008.phpt
0.45 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_009.phpt
1.489 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_010.phpt
4.577 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_011.phpt
2.674 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_012.phpt
1.728 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_013.phpt
8.307 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_014.phpt
2.979 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_015.phpt
4.745 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_016.phpt
12.348 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_017.phpt
4.05 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_018.phpt
3.086 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_019.phpt
4.023 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_16783.phpt
2.415 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_field_001.phpt
0.857 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_field_002.phpt
0.529 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_field_003.phpt
1.472 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_field_004.phpt
0.898 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_lint_001.phpt
4.447 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_lint_002.phpt
2.31 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_lint_003.phpt
2.735 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_lint_004.phpt
5.02 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_lint_005.phpt
2.636 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_record_001.phpt
0.531 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_subfield_001.phpt
0.699 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_subfield_002.phpt
1.027 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_001.phpt
7.449 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_002.phpt
3.521 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_003.phpt
1.448 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_004.phpt
2.747 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_005.phpt
1.466 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_006.phpt
1.407 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_007.phpt
0.949 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_008.phpt
12.363 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_009.phpt
1.073 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_16642.phpt
0.895 KB
2 Dec 2021 8.06 AM
root / root
0644
marc_xml_rsinger.phpt
2.44 KB
2 Dec 2021 8.06 AM
root / root
0644
music.mrc
4.17 KB
2 Dec 2021 8.06 AM
root / root
0644
music.xml
11.38 KB
2 Dec 2021 8.06 AM
root / root
0644
onerecord.xml
3.23 KB
2 Dec 2021 8.06 AM
root / root
0644
sandburg.mrc
1.115 KB
2 Dec 2021 8.06 AM
root / root
0644
sandburg.xml
3.259 KB
2 Dec 2021 8.06 AM
root / root
0644
skipif.inc
0.387 KB
2 Dec 2021 8.06 AM
root / root
0644
xmlescape.mrc
0.711 KB
2 Dec 2021 8.06 AM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF