diff options
author | Ignace Nyamagana Butera <nyamsprod@gmail.com> | 2014-08-07 14:41:34 +0200 |
---|---|---|
committer | Ignace Nyamagana Butera <nyamsprod@gmail.com> | 2014-08-07 14:41:34 +0200 |
commit | 82d6820a92b92f682fffbbcfcc0baf2c9de4cf49 (patch) | |
tree | 41747a2cf03d66573b2af4c42525bc4fcc8a86b1 /src | |
parent | 4ab385ed037458b4b24f61815bca3d22188c72b1 (diff) | |
download | csv-82d6820a92b92f682fffbbcfcc0baf2c9de4cf49.zip csv-82d6820a92b92f682fffbbcfcc0baf2c9de4cf49.tar.gz csv-82d6820a92b92f682fffbbcfcc0baf2c9de4cf49.tar.bz2 |
remove direct call to constructor in test
Diffstat (limited to 'src')
-rw-r--r-- | src/AbstractCsv.php | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/AbstractCsv.php b/src/AbstractCsv.php index e384bd3..066f1a5 100644 --- a/src/AbstractCsv.php +++ b/src/AbstractCsv.php @@ -100,14 +100,15 @@ abstract class AbstractCsv implements JsonSerializable, IteratorAggregate public static function createFromPath($path, $open_mode = 'r+') { if ($path instanceof SplTempFileObject) { - throw new InvalidArgumentException( - 'an `SplTempFileObject` object does not contain a valid path' - ); + throw new InvalidArgumentException('an `SplTempFileObject` object does not contain a valid path'); } elseif ($path instanceof SplFileInfo) { $path = $path->getPath().'/'.$path->getBasename(); + } elseif (! self::isValidString($path)) { + throw new InvalidArgumentException('path must be a valid string'); } + $path = (string) $path; - return new static((string) $path, $open_mode); + return new static($path, $open_mode); } /** @@ -133,15 +134,15 @@ abstract class AbstractCsv implements JsonSerializable, IteratorAggregate */ public static function createFromString($str) { - if (self::isValidString($str)) { - $obj = new SplTempFileObject; - $obj->fwrite((string) $str.PHP_EOL); - - return static::createFromFileObject($obj); + if (! self::isValidString($str)) { + throw new InvalidArgumentException( + 'the submitted data must be a string or an object implementing the `__toString` method' + ); } - throw new InvalidArgumentException( - 'the submitted data must be a string or an object implementing the `__toString` method' - ); + $obj = new SplTempFileObject; + $obj->fwrite((string) $str.PHP_EOL); + + return static::createFromFileObject($obj); } /** |