404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@18.217.10.152: ~ $
--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).

Filemanager

Name Type Size Permission Actions
bad_example.mrc File 1.81 KB 0644
bad_example.xml File 7.11 KB 0644
bigarchive.xml File 3.43 KB 0644
camel.mrc File 6.83 KB 0644
example.mrc File 1.81 KB 0644
marc_001.phpt File 2.43 KB 0644
marc_002.phpt File 4.58 KB 0644
marc_003.phpt File 1.33 KB 0644
marc_004.phpt File 9.33 KB 0644
marc_005.phpt File 3.4 KB 0644
marc_006.phpt File 1.27 KB 0644
marc_007.phpt File 1.16 KB 0644
marc_008.phpt File 461 B 0644
marc_009.phpt File 1.49 KB 0644
marc_010.phpt File 4.58 KB 0644
marc_011.phpt File 2.67 KB 0644
marc_012.phpt File 1.73 KB 0644
marc_013.phpt File 8.31 KB 0644
marc_014.phpt File 2.98 KB 0644
marc_015.phpt File 4.75 KB 0644
marc_016.phpt File 12.35 KB 0644
marc_017.phpt File 4.05 KB 0644
marc_018.phpt File 3.09 KB 0644
marc_019.phpt File 4.02 KB 0644
marc_16783.phpt File 2.42 KB 0644
marc_field_001.phpt File 878 B 0644
marc_field_002.phpt File 542 B 0644
marc_field_003.phpt File 1.47 KB 0644
marc_field_004.phpt File 920 B 0644
marc_lint_001.phpt File 4.45 KB 0644
marc_lint_002.phpt File 2.31 KB 0644
marc_lint_003.phpt File 2.74 KB 0644
marc_lint_004.phpt File 5.02 KB 0644
marc_lint_005.phpt File 2.64 KB 0644
marc_record_001.phpt File 544 B 0644
marc_subfield_001.phpt File 716 B 0644
marc_subfield_002.phpt File 1.03 KB 0644
marc_xml_001.phpt File 7.45 KB 0644
marc_xml_002.phpt File 3.52 KB 0644
marc_xml_003.phpt File 1.45 KB 0644
marc_xml_004.phpt File 2.75 KB 0644
marc_xml_005.phpt File 1.47 KB 0644
marc_xml_006.phpt File 1.41 KB 0644
marc_xml_007.phpt File 972 B 0644
marc_xml_008.phpt File 12.36 KB 0644
marc_xml_009.phpt File 1.07 KB 0644
marc_xml_16642.phpt File 916 B 0644
marc_xml_rsinger.phpt File 2.44 KB 0644
music.mrc File 4.17 KB 0644
music.xml File 11.38 KB 0644
onerecord.xml File 3.23 KB 0644
sandburg.mrc File 1.12 KB 0644
sandburg.xml File 3.26 KB 0644
skipif.inc File 396 B 0644
xmlescape.mrc File 728 B 0644