Created
October 30, 2012 17:14
-
-
Save mvriel/3981617 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Class IpRange | |
{ | |
public function setStartingAddress($startingAddress) | |
{ | |
InputValidator::assertValidAddress($startingAddress); | |
$this->startingAddress = (int) $startingAddress; | |
return $this; | |
} | |
} |
Extension is not an option in my case, given multiple inheritance is (unfortunately) not a language feature of PHP.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
That depends on how you make your validation methods visible; when using extension you can Stub your fixture as shown in the previous example. As a trait? You can't. Traits are effectively global state as well. SOLID has Dependency Inversion as a principle because it allows for things like testability.