From 6dddabb7dfb498748436c9b206d5fc9d9f279563 Mon Sep 17 00:00:00 2001 From: Jagepard Date: Wed, 7 Aug 2019 16:49:32 +0300 Subject: [PATCH 1/4] Add InvalidArgumentException --- src/FootballSubject.php | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/FootballSubject.php b/src/FootballSubject.php index 390d1ea..4d3be75 100755 --- a/src/FootballSubject.php +++ b/src/FootballSubject.php @@ -9,10 +9,6 @@ namespace Behavioral\Observer; -/** - * Class FootballSubject - * @package Behavioral\Observer - */ class FootballSubject implements SubjectInterface { /** @@ -35,9 +31,14 @@ public function __construct(string $name) /** * @param ObserverInterface $observer + * @throws \Exception */ public function attachObserver(ObserverInterface $observer): void { + if (array_key_exists($observer->getName(), $this->observers)) { + throw new \InvalidArgumentException('Observer is already exist'); + } + $this->observers[$observer->getName()] = $observer; } @@ -47,7 +48,7 @@ public function attachObserver(ObserverInterface $observer): void public function detachObserver(string $name): void { if (!array_key_exists($name, $this->observers)) { - throw new \InvalidArgumentException(); + throw new \InvalidArgumentException('Observer is not exist'); } unset($this->observers[$name]); From c06814a9978ad0dda634ff944fc1c311d667957e Mon Sep 17 00:00:00 2001 From: Jagepard Date: Wed, 7 Aug 2019 16:49:53 +0300 Subject: [PATCH 2/4] Update --- src/EventInterface.php | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/EventInterface.php b/src/EventInterface.php index 093c613..5893212 100755 --- a/src/EventInterface.php +++ b/src/EventInterface.php @@ -7,10 +7,6 @@ namespace Behavioral\Observer; -/** - * Interface EventInterface - * @package Behavioral\Observer - */ interface EventInterface { /** From 1d7f0073230ebeeb4d848caf956a1403c365fac5 Mon Sep 17 00:00:00 2001 From: Jagepard Date: Wed, 7 Aug 2019 16:50:15 +0300 Subject: [PATCH 3/4] Update --- src/FootballEvent.php | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/FootballEvent.php b/src/FootballEvent.php index 00ee352..64f135b 100755 --- a/src/FootballEvent.php +++ b/src/FootballEvent.php @@ -9,10 +9,6 @@ namespace Behavioral\Observer; -/** - * Class FootballEvent - * @package Behavioral\Observer - */ class FootballEvent implements EventInterface { const GOAL = 'Goal!!!'; From ff900c2cfb4babb00649fc9307dc0c816edb249d Mon Sep 17 00:00:00 2001 From: Jagepard Date: Wed, 7 Aug 2019 16:52:01 +0300 Subject: [PATCH 4/4] Update --- src/FootballObserver.php | 4 ---- src/ObserverInterface.php | 4 ---- src/SubjectInterface.php | 4 ---- tests/ObserverTest.php | 4 ---- 4 files changed, 16 deletions(-) diff --git a/src/FootballObserver.php b/src/FootballObserver.php index b0b4e49..b8e34cc 100755 --- a/src/FootballObserver.php +++ b/src/FootballObserver.php @@ -9,10 +9,6 @@ namespace Behavioral\Observer; -/** - * Class FootballObserver - * @package Behavioral\Observer - */ class FootballObserver implements ObserverInterface { /** diff --git a/src/ObserverInterface.php b/src/ObserverInterface.php index 4f9d52a..bcff9cd 100755 --- a/src/ObserverInterface.php +++ b/src/ObserverInterface.php @@ -7,10 +7,6 @@ namespace Behavioral\Observer; -/** - * Interface ObserverInterface - * @package Behavioral\Observer - */ interface ObserverInterface { /** diff --git a/src/SubjectInterface.php b/src/SubjectInterface.php index 4e16d5c..4dd94e3 100755 --- a/src/SubjectInterface.php +++ b/src/SubjectInterface.php @@ -7,10 +7,6 @@ namespace Behavioral\Observer; -/** - * Interface SubjectInterface - * @package Behavioral\Observer - */ interface SubjectInterface { /** diff --git a/tests/ObserverTest.php b/tests/ObserverTest.php index d158db0..150b45f 100755 --- a/tests/ObserverTest.php +++ b/tests/ObserverTest.php @@ -15,10 +15,6 @@ use Behavioral\Observer\SubjectInterface; use PHPUnit\Framework\TestCase as PHPUnit_Framework_TestCase; -/** - * Class ObserverTest - * @package Behavioral\Observer\Tests - */ class ObserverTest extends PHPUnit_Framework_TestCase { /**