From 08a39731a202cd36f71e635fc299ea2d984f6435 Mon Sep 17 00:00:00 2001 From: David Maus <maus@hab.de> Date: Mon, 6 Aug 2012 13:25:20 +0200 Subject: [PATCH] New functions: Check if concrete nested records contain a record * php/HAB/Pica/Record/LocalRecord.php (containsCopyRecord): New function. Return true if local record contains a copy record. * php/HAB/Pica/Record/TitleRecord.php (containsLocalRecord): New function. Return true if title record contains a local record. --- src/php/HAB/Pica/Record/LocalRecord.php | 10 ++++++++++ src/php/HAB/Pica/Record/TitleRecord.php | 11 +++++++++++ .../php/HAB/Pica/Record/LocalRecordTest.php | 8 ++++++++ .../php/HAB/Pica/Record/TitleRecordTest.php | 8 ++++++++ 4 files changed, 37 insertions(+) diff --git a/src/php/HAB/Pica/Record/LocalRecord.php b/src/php/HAB/Pica/Record/LocalRecord.php index 43ff535..c959c99 100644 --- a/src/php/HAB/Pica/Record/LocalRecord.php +++ b/src/php/HAB/Pica/Record/LocalRecord.php @@ -121,6 +121,16 @@ class LocalRecord extends NestedRecord { return null; } + /** + * Return true if local record contains the copy record. + * + * @param \HAB\Pica\Record\CopyRecord $record Copy record + * @return boolean + */ + public function containsCopyRecord (\HAB\Pica\Record\CopyRecord $record) { + return $this->containsRecord($record); + } + /** * Compare two copy records. * diff --git a/src/php/HAB/Pica/Record/TitleRecord.php b/src/php/HAB/Pica/Record/TitleRecord.php index 236d26c..6ec2c76 100644 --- a/src/php/HAB/Pica/Record/TitleRecord.php +++ b/src/php/HAB/Pica/Record/TitleRecord.php @@ -178,6 +178,16 @@ class TitleRecord extends NestedRecord { } } + /** + * Return true if title record contains the local record. + * + * @param \HAB\Pica\Record\LocalRecord $record Local record + * @return boolean + */ + public function containsLocalRecord (\HAB\Pica\Record\LocalRecord $record) { + return $this->containsRecord($record); + } + /** * Compare two local records. * @@ -192,4 +202,5 @@ class TitleRecord extends NestedRecord { protected function compareRecords (\HAB\Pica\Record\Record $a, \HAB\Pica\Record\Record $b) { return $a->getILN() - $b->getILN(); } + } \ No newline at end of file diff --git a/src/tests/unit-tests/php/HAB/Pica/Record/LocalRecordTest.php b/src/tests/unit-tests/php/HAB/Pica/Record/LocalRecordTest.php index b7e0b15..98536af 100644 --- a/src/tests/unit-tests/php/HAB/Pica/Record/LocalRecordTest.php +++ b/src/tests/unit-tests/php/HAB/Pica/Record/LocalRecordTest.php @@ -103,6 +103,14 @@ class LocalRecordTest extends \PHPUnit_FrameWork_TestCase { $this->assertEquals(10, $r->getMaximumOccurrenceOf('144Z')); } + public function testContainsCopyRecord () { + $r = new LocalRecord(); + $c = new CopyRecord(); + $this->assertFalse($r->containsCopyRecord($c)); + $r->addCopyRecord($c); + $this->assertTrue($r->containsCopyRecord($c)); + } + /// /** diff --git a/src/tests/unit-tests/php/HAB/Pica/Record/TitleRecordTest.php b/src/tests/unit-tests/php/HAB/Pica/Record/TitleRecordTest.php index 8b418c3..10159be 100644 --- a/src/tests/unit-tests/php/HAB/Pica/Record/TitleRecordTest.php +++ b/src/tests/unit-tests/php/HAB/Pica/Record/TitleRecordTest.php @@ -101,4 +101,12 @@ class TitleRecordTest extends \PHPUnit_FrameWork_TestCase { $r->setPPN('something else'); $this->assertEquals('something else', $r->getPPN()); } + + public function testContainsLocalRecord () { + $r = new TitleRecord(); + $l = new LocalRecord(); + $this->assertFalse($r->containsLocalRecord($l)); + $r->addLocalRecord($l); + $this->assertTrue($r->containsLocalRecord($l)); + } } -- GitLab