$77 GRAYBYTE WORDPRESS FILE MANAGER $42

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

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

HOME
Current File : /opt/alt/php82/usr/share/pear/test/File_MARC/tests//marc_lint_004.phpt
--TEST--
marc_lint_004: Tests check_245() called separately
--SKIPIF--
<?php include('tests/skipif.inc'); ?>
<?php include('tests/skipif_noispn.inc'); ?>
--FILE--
<?php
$dir = dirname(__FILE__);
require __DIR__ . '/bootstrap.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 (LCPS 1.7.1 for RDA records), requires period.
245: MARC21 allows ? or ! as final punctuation but LCRI 1.0C, Nov. 2003 (LCPS 1.7.1 for RDA records), 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
..
--
21 Mar 2024 1.09 PM
root / root
0755
bad_example.mrc
1.81 KB
6 Apr 2023 3.34 PM
root / root
0644
bad_example.xml
7.109 KB
6 Apr 2023 3.34 PM
root / root
0644
bigarchive.xml
3.432 KB
6 Apr 2023 3.34 PM
root / root
0644
camel.mrc
6.826 KB
6 Apr 2023 3.34 PM
root / root
0644
example.mrc
1.807 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_001.phpt
2.448 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_002.phpt
4.597 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_003.phpt
1.352 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_004.phpt
9.349 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_005.phpt
3.421 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_006.phpt
1.284 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_007.phpt
1.18 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_008.phpt
0.467 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_009.phpt
1.506 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_010.phpt
4.594 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_011.phpt
2.69 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_012.phpt
1.744 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_013.phpt
8.323 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_014.phpt
3.487 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_015.phpt
4.762 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_016.phpt
12.364 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_017.phpt
4.066 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_018.phpt
3.103 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_019.phpt
4.04 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_020.phpt
3.87 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_021.phpt
4.762 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_022.phpt
10.26 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_023.phpt
0.527 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_16783.phpt
2.432 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_field_001.phpt
0.874 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_field_002.phpt
0.546 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_field_003.phpt
1.654 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_field_004.phpt
0.915 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_field_005.phpt
0.991 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_field_21246.phpt
0.793 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_lint_001.phpt
4.411 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_lint_002.phpt
2.303 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_lint_003.phpt
2.729 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_lint_004.phpt
5.069 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_lint_005.phpt
2.629 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_record_001.phpt
0.548 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_subfield_001.phpt
0.716 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_subfield_002.phpt
1.044 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_001.phpt
7.466 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_002.phpt
3.537 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_003.phpt
1.462 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_004.phpt
2.764 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_005.phpt
1.479 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_006.phpt
1.421 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_007.phpt
0.963 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_008.phpt
12.377 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_009.phpt
1.087 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_16642.phpt
0.908 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_namespace.phpt
0.703 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_namespace_prefix.phpt
0.683 KB
6 Apr 2023 3.34 PM
root / root
0644
marc_xml_rsinger.phpt
2.454 KB
6 Apr 2023 3.34 PM
root / root
0644
music.mrc
4.17 KB
6 Apr 2023 3.34 PM
root / root
0644
music.xml
11.38 KB
6 Apr 2023 3.34 PM
root / root
0644
namespace.xml
7.899 KB
6 Apr 2023 3.34 PM
root / root
0644
onerecord.xml
3.23 KB
6 Apr 2023 3.34 PM
root / root
0644
sandburg.mrc
1.115 KB
6 Apr 2023 3.34 PM
root / root
0644
sandburg.xml
3.259 KB
6 Apr 2023 3.34 PM
root / root
0644
skipif.inc
0.173 KB
6 Apr 2023 3.34 PM
root / root
0644
xmlescape.mrc
0.711 KB
6 Apr 2023 3.34 PM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF