mirror of
https://github.com/wiosna-dev/common-library.git
synced 2026-03-12 01:31:45 +01:00
Compare commits
1 Commits
0.0.18
...
analysis-q
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b9dfa713ff |
@@ -24,14 +24,14 @@ use Meritoo\Common\Utilities\Arrays;
|
||||
class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
{
|
||||
/**
|
||||
* The elements of collection
|
||||
* The elements of collection.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
private $elements;
|
||||
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param array $elements (optional) The elements of collection
|
||||
*/
|
||||
@@ -42,7 +42,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
* Required by interface Countable
|
||||
* Required by interface Countable.
|
||||
*/
|
||||
public function count()
|
||||
{
|
||||
@@ -51,7 +51,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
* Required by interface ArrayAccess
|
||||
* Required by interface ArrayAccess.
|
||||
*/
|
||||
public function offsetExists($offset)
|
||||
{
|
||||
@@ -60,7 +60,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
* Required by interface ArrayAccess
|
||||
* Required by interface ArrayAccess.
|
||||
*/
|
||||
public function offsetGet($offset)
|
||||
{
|
||||
@@ -73,7 +73,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
* Required by interface ArrayAccess
|
||||
* Required by interface ArrayAccess.
|
||||
*/
|
||||
public function offsetSet($offset, $value)
|
||||
{
|
||||
@@ -82,7 +82,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
* Required by interface ArrayAccess
|
||||
* Required by interface ArrayAccess.
|
||||
*/
|
||||
public function offsetUnset($offset)
|
||||
{
|
||||
@@ -93,7 +93,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
* Required by interface IteratorAggregate
|
||||
* Required by interface IteratorAggregate.
|
||||
*/
|
||||
public function getIterator()
|
||||
{
|
||||
@@ -101,10 +101,11 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds given element (at the end of collection)
|
||||
* Adds given element (at the end of collection).
|
||||
*
|
||||
* @param mixed $element The element to add
|
||||
* @param mixed $index (optional) Index / key of the element
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function add($element, $index = null)
|
||||
@@ -119,11 +120,12 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds given elements (at the end of collection)
|
||||
* Adds given elements (at the end of collection).
|
||||
*
|
||||
* @param array|Collection $elements The elements to add
|
||||
* @param bool|false $useIndexes (optional) If is set to true, indexes of given elements will be used in
|
||||
* this collection. Otherwise - not.
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function addMultiple($elements, $useIndexes = false)
|
||||
@@ -142,9 +144,10 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Prepends given element (adds given element at the beginning of collection)
|
||||
* Prepends given element (adds given element at the beginning of collection).
|
||||
*
|
||||
* @param mixed $element The element to prepend
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function prepend($element)
|
||||
@@ -155,9 +158,10 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes given element
|
||||
* Removes given element.
|
||||
*
|
||||
* @param mixed $element The element to remove
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function remove($element)
|
||||
@@ -166,6 +170,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
foreach ($this->elements as $index => $existing) {
|
||||
if ($element === $existing) {
|
||||
unset($this->elements[$index]);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -175,7 +180,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if collection is empty
|
||||
* Returns information if collection is empty.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
@@ -185,9 +190,10 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given element is first in the collection
|
||||
* Returns information if given element is first in the collection.
|
||||
*
|
||||
* @param mixed $element The element to verify
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function isFirst($element)
|
||||
@@ -196,9 +202,10 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given element is last in the collection
|
||||
* Returns information if given element is last in the collection.
|
||||
*
|
||||
* @param mixed $element The element to verify
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function isLast($element)
|
||||
@@ -207,9 +214,10 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if the collection has given element, iow. if given element exists in the collection
|
||||
* Returns information if the collection has given element, iow. if given element exists in the collection.
|
||||
*
|
||||
* @param mixed $element The element to verify
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function has($element)
|
||||
@@ -220,9 +228,10 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns previous element for given element
|
||||
* Returns previous element for given element.
|
||||
*
|
||||
* @param mixed $element The element to verify
|
||||
*
|
||||
* @return mixed|null
|
||||
*/
|
||||
public function getPrevious($element)
|
||||
@@ -231,9 +240,10 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns next element for given element
|
||||
* Returns next element for given element.
|
||||
*
|
||||
* @param mixed $element The element to verify
|
||||
*
|
||||
* @return mixed|null
|
||||
*/
|
||||
public function getNext($element)
|
||||
@@ -242,7 +252,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the first element in the collection
|
||||
* Returns the first element in the collection.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
@@ -252,7 +262,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the last element in the collection
|
||||
* Returns the last element in the collection.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
@@ -262,7 +272,7 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an array representation of the collection
|
||||
* Returns an array representation of the collection.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
@@ -272,9 +282,10 @@ class Collection implements Countable, ArrayAccess, IteratorAggregate
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if element with given index/key exists
|
||||
* Returns information if element with given index/key exists.
|
||||
*
|
||||
* @param string|int $index The index/key of element
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private function exists($index)
|
||||
|
||||
@@ -13,7 +13,7 @@ use Meritoo\Common\Type\Base\BaseType;
|
||||
use Meritoo\Common\Utilities\Arrays;
|
||||
|
||||
/**
|
||||
* An exception used while type of something is unknown
|
||||
* An exception used while type of something is unknown.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -21,7 +21,7 @@ use Meritoo\Common\Utilities\Arrays;
|
||||
abstract class UnknownTypeException extends Exception
|
||||
{
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param string|int $unknownType The unknown type of something (value of constant)
|
||||
* @param BaseType $typeInstance An instance of class that contains type of the something
|
||||
@@ -33,7 +33,7 @@ abstract class UnknownTypeException extends Exception
|
||||
$types = Arrays::values2string($allTypes, '', ', ');
|
||||
|
||||
$template = 'The \'%s\' type of %s is unknown. Probably doesn\'t exist or there is a typo. You should use one'
|
||||
. ' of these types: %s.';
|
||||
.' of these types: %s.';
|
||||
|
||||
$message = sprintf(sprintf($template, $unknownType, $typeName, $types));
|
||||
parent::__construct($message);
|
||||
|
||||
@@ -12,7 +12,7 @@ use Meritoo\Common\Exception\Base\UnknownTypeException;
|
||||
use Meritoo\Common\Type\DatePartType;
|
||||
|
||||
/**
|
||||
* An exception used while type of date part, e.g. "year", is unknown
|
||||
* An exception used while type of date part, e.g. "year", is unknown.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -20,7 +20,7 @@ use Meritoo\Common\Type\DatePartType;
|
||||
class UnknownDatePartTypeException extends UnknownTypeException
|
||||
{
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param string $unknownDatePart Type of date part, e.g. "year". One of DatePartType class constants.
|
||||
* @param string $value Incorrect value
|
||||
|
||||
@@ -11,7 +11,7 @@ namespace Meritoo\Common\Exception\Reflection;
|
||||
use Exception;
|
||||
|
||||
/**
|
||||
* An exception used while name of class or trait cannot be resolved
|
||||
* An exception used while name of class or trait cannot be resolved.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -19,7 +19,7 @@ use Exception;
|
||||
class CannotResolveClassNameException extends Exception
|
||||
{
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param array|object|string $source Source of the class's / trait's name. It cane be an array of objects,
|
||||
* namespaces, object or namespace.
|
||||
@@ -36,7 +36,7 @@ class CannotResolveClassNameException extends Exception
|
||||
}
|
||||
|
||||
if (is_scalar($source)) {
|
||||
$value = sprintf(' %s', (string)$source);
|
||||
$value = sprintf(' %s', (string) $source);
|
||||
}
|
||||
|
||||
$template = 'Name of %s from given \'%s\'%s cannot be resolved. Is there everything ok?';
|
||||
|
||||
@@ -12,7 +12,7 @@ use Exception;
|
||||
use Meritoo\Common\Utilities\Reflection;
|
||||
|
||||
/**
|
||||
* An exception used while given class has no child classes
|
||||
* An exception used while given class has no child classes.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -20,7 +20,7 @@ use Meritoo\Common\Utilities\Reflection;
|
||||
class MissingChildClassesException extends Exception
|
||||
{
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param array|object|string $parentClass Class that hasn't child classes, but it should. An array of objects,
|
||||
* strings, object or string.
|
||||
@@ -28,7 +28,7 @@ class MissingChildClassesException extends Exception
|
||||
public function __construct($parentClass)
|
||||
{
|
||||
$template = 'The \'%s\' class requires one child class at least who will extend her (maybe is an abstract'
|
||||
. ' class), but the child classes are missing. Did you forget to extend this class?';
|
||||
.' class), but the child classes are missing. Did you forget to extend this class?';
|
||||
|
||||
$parentClassName = Reflection::getClassName($parentClass);
|
||||
$message = sprintf($template, $parentClassName);
|
||||
|
||||
@@ -12,7 +12,7 @@ use Exception;
|
||||
use Meritoo\Common\Utilities\Reflection;
|
||||
|
||||
/**
|
||||
* An exception used while given class has more than one child class
|
||||
* An exception used while given class has more than one child class.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -20,7 +20,7 @@ use Meritoo\Common\Utilities\Reflection;
|
||||
class TooManyChildClassesException extends Exception
|
||||
{
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param array|object|string $parentClass Class that has more than one child class, but it shouldn't. An array
|
||||
* of objects, strings, object or string.
|
||||
@@ -29,7 +29,7 @@ class TooManyChildClassesException extends Exception
|
||||
public function __construct($parentClass, array $childClasses)
|
||||
{
|
||||
$template = "The '%s' class requires one child class at most who will extend her, but more than one child"
|
||||
. " class was found:\n- %s\n\nWhy did you create more than one classes that extend '%s' class?";
|
||||
." class was found:\n- %s\n\nWhy did you create more than one classes that extend '%s' class?";
|
||||
|
||||
$parentClassName = Reflection::getClassName($parentClass);
|
||||
$message = sprintf($template, $parentClassName, implode("\n- ", $childClasses), $parentClassName);
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
namespace Meritoo\Common\Exception\Regex;
|
||||
|
||||
/**
|
||||
* An exception used while length of given hexadecimal value of color is incorrect
|
||||
* An exception used while length of given hexadecimal value of color is incorrect.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -17,14 +17,14 @@ namespace Meritoo\Common\Exception\Regex;
|
||||
class IncorrectColorHexLengthException extends \Exception
|
||||
{
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param string $color Incorrect hexadecimal value of color
|
||||
*/
|
||||
public function __construct($color)
|
||||
{
|
||||
$template = 'Length of hexadecimal value of color \'%s\' is incorrect. It\'s %d, but it should be 3 or 6.'
|
||||
. ' Is there everything ok?';
|
||||
.' Is there everything ok?';
|
||||
|
||||
$message = sprintf($template, $color, strlen($color));
|
||||
parent::__construct($message);
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
namespace Meritoo\Common\Exception\Regex;
|
||||
|
||||
/**
|
||||
* An exception used while given hexadecimal value of color is invalid
|
||||
* An exception used while given hexadecimal value of color is invalid.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -17,7 +17,7 @@ namespace Meritoo\Common\Exception\Regex;
|
||||
class InvalidColorHexValueException extends \Exception
|
||||
{
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param string $color Invalid hexadecimal value of color
|
||||
*/
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
namespace Meritoo\Common\Exception\Regex;
|
||||
|
||||
/**
|
||||
* An exception used while url is invalid
|
||||
* An exception used while url is invalid.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -11,7 +11,7 @@ namespace Meritoo\Common\Exception\Regex;
|
||||
class InvalidUrlException extends \Exception
|
||||
{
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param string $url Invalid url
|
||||
*/
|
||||
|
||||
@@ -6,7 +6,7 @@ use Meritoo\Common\Exception\Base\UnknownTypeException;
|
||||
use Meritoo\Common\Type\OopVisibilityType;
|
||||
|
||||
/**
|
||||
* An exception used while the visibility of a property, a method or (as of PHP 7.1.0) a constant is unknown
|
||||
* An exception used while the visibility of a property, a method or (as of PHP 7.1.0) a constant is unknown.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
|
||||
@@ -17,7 +17,7 @@ use ReflectionClass;
|
||||
use ReflectionMethod;
|
||||
|
||||
/**
|
||||
* Base test case with common methods and data providers
|
||||
* Base test case with common methods and data providers.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -25,7 +25,7 @@ use ReflectionMethod;
|
||||
abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
{
|
||||
/**
|
||||
* Provides an empty value
|
||||
* Provides an empty value.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -40,7 +40,7 @@ abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides boolean value
|
||||
* Provides boolean value.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -51,7 +51,7 @@ abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides instance of DateTime class
|
||||
* Provides instance of DateTime class.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -64,7 +64,7 @@ abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides relative / compound format of DateTime
|
||||
* Provides relative / compound format of DateTime.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -84,7 +84,7 @@ abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides path of not existing file, e.g. "lorem/ipsum.jpg"
|
||||
* Provides path of not existing file, e.g. "lorem/ipsum.jpg".
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -101,19 +101,20 @@ abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
*
|
||||
* @param string $fileName Name of file
|
||||
* @param string $directoryPath (optional) Path of directory containing the file
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getFilePathToTests($fileName, $directoryPath = '')
|
||||
{
|
||||
if (!empty($directoryPath)) {
|
||||
$directoryPath = '/' . $directoryPath;
|
||||
$directoryPath = '/'.$directoryPath;
|
||||
}
|
||||
|
||||
return sprintf('%s/../../../../../data/tests/%s%s', __DIR__, $fileName, $directoryPath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Verifies visibility and arguments of method
|
||||
* Verifies visibility and arguments of method.
|
||||
*
|
||||
* @param string $classNamespace Namespace of class that contains method to verify
|
||||
* @param string|ReflectionMethod $method Name of method or just the method to verify
|
||||
@@ -123,6 +124,7 @@ abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
* verified method
|
||||
* @param int $requiredArgumentsCount (optional) Expected count/amount of required arguments
|
||||
* of the verified method
|
||||
*
|
||||
* @throws UnknownOopVisibilityTypeException
|
||||
*
|
||||
* Attention. 2nd argument, the $method, may be:
|
||||
@@ -156,14 +158,17 @@ abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
switch ($visibilityType) {
|
||||
case OopVisibilityType::IS_PUBLIC:
|
||||
static::assertTrue($method->isPublic());
|
||||
|
||||
break;
|
||||
|
||||
case OopVisibilityType::IS_PROTECTED:
|
||||
static::assertTrue($method->isProtected());
|
||||
|
||||
break;
|
||||
|
||||
case OopVisibilityType::IS_PRIVATE:
|
||||
static::assertTrue($method->isPrivate());
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -172,7 +177,7 @@ abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Verifies visibility and arguments of class constructor
|
||||
* Verifies visibility and arguments of class constructor.
|
||||
*
|
||||
* @param string $classNamespace Namespace of class that contains method to verify
|
||||
* @param string $visibilityType Expected visibility of verified method. One of OopVisibilityType class
|
||||
@@ -180,6 +185,7 @@ abstract class BaseTestCase extends PHPUnit_Framework_TestCase
|
||||
* @param int $argumentsCount (optional) Expected count/amount of arguments of the verified method
|
||||
* @param int $requiredArgumentsCount (optional) Expected count/amount of required arguments of the verified
|
||||
* method
|
||||
*
|
||||
* @throws UnknownOopVisibilityTypeException
|
||||
*/
|
||||
protected function verifyConstructorVisibilityAndArguments(
|
||||
|
||||
@@ -6,7 +6,7 @@ use Generator;
|
||||
use Meritoo\Common\Type\Base\BaseType;
|
||||
|
||||
/**
|
||||
* Base test case for the type of something
|
||||
* Base test case for the type of something.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -14,7 +14,7 @@ use Meritoo\Common\Type\Base\BaseType;
|
||||
abstract class BaseTypeTestCase extends BaseTestCase
|
||||
{
|
||||
/**
|
||||
* Verifies availability of all types
|
||||
* Verifies availability of all types.
|
||||
*/
|
||||
public function testAvailabilityOfAllTypes()
|
||||
{
|
||||
@@ -25,7 +25,7 @@ abstract class BaseTypeTestCase extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Verifies whether given type is correct or not
|
||||
* Verifies whether given type is correct or not.
|
||||
*
|
||||
* @param string $type Type to verify
|
||||
* @param bool $expected Information if given type is correct or not
|
||||
@@ -38,21 +38,21 @@ abstract class BaseTypeTestCase extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides type to verify and information if it's correct
|
||||
* Provides type to verify and information if it's correct.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
abstract public function provideTypeToVerify();
|
||||
|
||||
/**
|
||||
* Returns instance of the tested type
|
||||
* Returns instance of the tested type.
|
||||
*
|
||||
* @return BaseType
|
||||
*/
|
||||
abstract protected function getTestedTypeInstance();
|
||||
|
||||
/**
|
||||
* Returns all expected types of the tested type
|
||||
* Returns all expected types of the tested type.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
|
||||
@@ -20,14 +20,14 @@ use Meritoo\Common\Utilities\Reflection;
|
||||
abstract class BaseType
|
||||
{
|
||||
/**
|
||||
* All types
|
||||
* All types.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
private $all;
|
||||
|
||||
/**
|
||||
* Returns all types
|
||||
* Returns all types.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
@@ -41,9 +41,10 @@ abstract class BaseType
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given type is correct
|
||||
* Returns information if given type is correct.
|
||||
*
|
||||
* @param string $type The type to check
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function isCorrectType($type)
|
||||
|
||||
@@ -11,7 +11,7 @@ namespace Meritoo\Common\Type;
|
||||
use Meritoo\Common\Type\Base\BaseType;
|
||||
|
||||
/**
|
||||
* Type of date part, e.g. "year"
|
||||
* Type of date part, e.g. "year".
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -19,42 +19,42 @@ use Meritoo\Common\Type\Base\BaseType;
|
||||
class DatePartType extends BaseType
|
||||
{
|
||||
/**
|
||||
* The "day" date part
|
||||
* The "day" date part.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
const DAY = 'day';
|
||||
|
||||
/**
|
||||
* The "hour" date part
|
||||
* The "hour" date part.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
const HOUR = 'hour';
|
||||
|
||||
/**
|
||||
* The "minute" date part
|
||||
* The "minute" date part.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
const MINUTE = 'minute';
|
||||
|
||||
/**
|
||||
* The "month" date part
|
||||
* The "month" date part.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
const MONTH = 'month';
|
||||
|
||||
/**
|
||||
* The "second" date part
|
||||
* The "second" date part.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
const SECOND = 'second';
|
||||
|
||||
/**
|
||||
* The "year" date part
|
||||
* The "year" date part.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
|
||||
@@ -5,7 +5,7 @@ namespace Meritoo\Common\Type;
|
||||
use Meritoo\Common\Type\Base\BaseType;
|
||||
|
||||
/**
|
||||
* The visibility of a property, a method or (as of PHP 7.1.0) a constant
|
||||
* The visibility of a property, a method or (as of PHP 7.1.0) a constant.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -15,21 +15,21 @@ use Meritoo\Common\Type\Base\BaseType;
|
||||
class OopVisibilityType extends BaseType
|
||||
{
|
||||
/**
|
||||
* The "private" visibility of OOP
|
||||
* The "private" visibility of OOP.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const IS_PRIVATE = 3;
|
||||
|
||||
/**
|
||||
* The "protected" visibility of OOP
|
||||
* The "protected" visibility of OOP.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const IS_PROTECTED = 2;
|
||||
|
||||
/**
|
||||
* The "public" visibility of OOP
|
||||
* The "public" visibility of OOP.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
namespace Meritoo\Common\Utilities;
|
||||
|
||||
/**
|
||||
* Useful arrays methods
|
||||
* Useful arrays methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -17,7 +17,7 @@ namespace Meritoo\Common\Utilities;
|
||||
class Arrays
|
||||
{
|
||||
/**
|
||||
* Name of the array's key used to store position of element of the array
|
||||
* Name of the array's key used to store position of element of the array.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
@@ -30,6 +30,7 @@ class Arrays
|
||||
* @param array $array Array data to be converted
|
||||
* @param string|int $arrayColumnKey (optional) Column name
|
||||
* @param string $separator (optional) Separator used in resultant string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function values2string(array $array, $arrayColumnKey = '', $separator = ',')
|
||||
@@ -79,12 +80,13 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts given array to string with keys, e.g. abc=1&def=2 or abc="1" def="2"
|
||||
* Converts given array to string with keys, e.g. abc=1&def=2 or abc="1" def="2".
|
||||
*
|
||||
* @param array $array Array data to be converted
|
||||
* @param string $separator (optional) Separator used between name-value pairs in resultant string
|
||||
* @param string $valuesKeysSeparator (optional) Separator used between name and value in resultant string
|
||||
* @param string $valuesWrapper (optional) Wrapper used to wrap values, e.g. double-quote: key="value"
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function valuesKeys2string($array, $separator = ',', $valuesKeysSeparator = '=', $valuesWrapper = '')
|
||||
@@ -101,7 +103,7 @@ class Arrays
|
||||
$value = sprintf('%s%s%s', $valuesWrapper, $value, $valuesWrapper);
|
||||
}
|
||||
|
||||
$effect .= $key . $valuesKeysSeparator . $value;
|
||||
$effect .= $key.$valuesKeysSeparator.$value;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,10 +111,11 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts given array's rows to csv string
|
||||
* Converts given array's rows to csv string.
|
||||
*
|
||||
* @param array $array Array data to be converted. It have to be an array that represents database table.
|
||||
* @param string $separator (optional) Separator used in resultant string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function values2csv($array, $separator = ',')
|
||||
@@ -145,12 +148,13 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given element is the first one
|
||||
* Returns information if given element is the first one.
|
||||
*
|
||||
* @param array $array The array to get the first element of
|
||||
* @param mixed $element The element to check / verify
|
||||
* @param bool $firstLevelOnly (optional) If is set to true, first element is returned. Otherwise - totally
|
||||
* first element is returned (first of the First array).
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isFirstElement(array $array, $element, $firstLevelOnly = true)
|
||||
@@ -161,7 +165,7 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the first element of given array
|
||||
* Returns the first element of given array.
|
||||
*
|
||||
* It may be first element of given array or the totally first element from the all elements (first element of the
|
||||
* first array).
|
||||
@@ -169,6 +173,7 @@ class Arrays
|
||||
* @param array $array The array to get the first element of
|
||||
* @param bool $firstLevelOnly (optional) If is set to true, first element is returned. Otherwise - totally
|
||||
* first element is returned (first of the first array).
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public static function getFirstElement(array $array, $firstLevelOnly = true)
|
||||
@@ -192,9 +197,10 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns first key of array
|
||||
* Returns first key of array.
|
||||
*
|
||||
* @param array $array The array to get the first key of
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public static function getFirstKey(array $array)
|
||||
@@ -213,12 +219,13 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given element is the last one
|
||||
* Returns information if given element is the last one.
|
||||
*
|
||||
* @param array $array The array to get the last element of
|
||||
* @param mixed $element The element to check / verify
|
||||
* @param bool $firstLevelOnly (optional) If is set to true, last element is returned. Otherwise - totally
|
||||
* last element is returned (last of the latest array).
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isLastElement(array $array, $element, $firstLevelOnly = true)
|
||||
@@ -229,7 +236,7 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the last element of given array
|
||||
* Returns the last element of given array.
|
||||
*
|
||||
* It may be last element of given array or the totally last element from the all elements (last element of the
|
||||
* latest array).
|
||||
@@ -237,6 +244,7 @@ class Arrays
|
||||
* @param array $array The array to get the last element of
|
||||
* @param bool $firstLevelOnly (optional) If is set to true, last element is returned. Otherwise - totally
|
||||
* last element is returned (last of the latest array).
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public static function getLastElement(array $array, $firstLevelOnly = true)
|
||||
@@ -259,10 +267,11 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns breadcrumb (a path) to the last element of array
|
||||
* Returns breadcrumb (a path) to the last element of array.
|
||||
*
|
||||
* @param array $array The array to get the breadcrumb
|
||||
* @param string $separator (optional) Separator used to stick the elements
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getLastElementBreadCrumb($array, $separator = '/')
|
||||
@@ -281,13 +290,14 @@ class Arrays
|
||||
$crumb = $last;
|
||||
}
|
||||
|
||||
return $breadCrumb . $separator . $crumb;
|
||||
return $breadCrumb.$separator.$crumb;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the last row of array
|
||||
* Returns the last row of array.
|
||||
*
|
||||
* @param array $array The array to get the last row of
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public static function getLastRow(array $array)
|
||||
@@ -322,11 +332,12 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Replaces array keys that match given pattern with new key name
|
||||
* Replaces array keys that match given pattern with new key name.
|
||||
*
|
||||
* @param array $dataArray The array
|
||||
* @param string $oldKeyPattern Old key pattern
|
||||
* @param string $newKey New key name
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function replaceArrayKeys($dataArray, $oldKeyPattern, $newKey)
|
||||
@@ -351,12 +362,13 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates JavaScript code for given PHP array
|
||||
* Generates JavaScript code for given PHP array.
|
||||
*
|
||||
* @param array $array The array that should be generated to JavaScript
|
||||
* @param string $jsVariableName (optional) Name of the variable that will be in generated JavaScript code
|
||||
* @param bool $preserveIndexes (optional) If is set to true and $jsVariableName isn't empty, indexes also
|
||||
* will be added to the JavaScript code. Otherwise not.
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public static function array2JavaScript(array $array, $jsVariableName = '', $preserveIndexes = false)
|
||||
@@ -401,8 +413,8 @@ class Arrays
|
||||
if (is_array($value)) {
|
||||
$variable = $index;
|
||||
|
||||
if (is_integer($index)) {
|
||||
$variable = 'value_' . $variable;
|
||||
if (is_int($index)) {
|
||||
$variable = 'value_'.$variable;
|
||||
}
|
||||
|
||||
$value = self::array2JavaScript($value, $variable, $preserveIndexes);
|
||||
@@ -419,7 +431,7 @@ class Arrays
|
||||
$effect .= "\n";
|
||||
}
|
||||
|
||||
$effect .= $value . "\n";
|
||||
$effect .= $value."\n";
|
||||
$effect .= sprintf('%s[%s] = %s;', $jsVariableName, Miscellaneous::quoteValue($index), $variable);
|
||||
|
||||
if ($counter !== $arrayCount) {
|
||||
@@ -452,9 +464,10 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Quotes (adds quotes) to elements of an array that are strings
|
||||
* Quotes (adds quotes) to elements of an array that are strings.
|
||||
*
|
||||
* @param array $array The array to check for string values
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function quoteStrings($array)
|
||||
@@ -469,7 +482,7 @@ class Arrays
|
||||
$value = self::quoteStrings($value);
|
||||
} elseif (is_string($value)) {
|
||||
if (!Regex::isQuoted($value)) {
|
||||
$value = '\'' . $value . '\'';
|
||||
$value = '\''.$value.'\'';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -481,10 +494,11 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes marginal element (first or last)
|
||||
* Removes marginal element (first or last).
|
||||
*
|
||||
* @param string|array $item The item which should be shortened
|
||||
* @param bool $last (optional) If is set to true, last element is removed. Otherwise - first.
|
||||
*
|
||||
* @return string|array
|
||||
*/
|
||||
public static function removeMarginalElement($item, $last = true)
|
||||
@@ -509,9 +523,10 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns last key of array
|
||||
* Returns last key of array.
|
||||
*
|
||||
* @param array $array The array to get the last key of
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public static function getLastKey(array $array)
|
||||
@@ -522,10 +537,11 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes element / item of given array
|
||||
* Removes element / item of given array.
|
||||
*
|
||||
* @param array $array The array that contains element / item which should be removed
|
||||
* @param mixed $item The element / item which should be removed
|
||||
*
|
||||
* @return bool|array
|
||||
*/
|
||||
public static function removeElement(array $array, $item)
|
||||
@@ -553,7 +569,7 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes items from given array starting at given element (before or after the element)
|
||||
* Removes items from given array starting at given element (before or after the element).
|
||||
*
|
||||
* @param array $array The array which contains items to remove
|
||||
* @param mixed $needle The element which is start point of deletion
|
||||
@@ -605,6 +621,7 @@ class Arrays
|
||||
* value will be used with it's key, because other will be overridden.
|
||||
* Otherwise - values are preserved and keys assigned to that values are
|
||||
* returned as an array.
|
||||
*
|
||||
* @return array
|
||||
*
|
||||
* Example of $ignoreDuplicatedValues = false:
|
||||
@@ -639,6 +656,7 @@ class Arrays
|
||||
*/
|
||||
if (is_array($value)) {
|
||||
$replaced[$key] = self::setKeysAsValues($value, $ignoreDuplicatedValues);
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -666,10 +684,11 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Applies ksort() function recursively in the given array
|
||||
* Applies ksort() function recursively in the given array.
|
||||
*
|
||||
* @param array $array The array to sort
|
||||
* @param int $sortFlags (optional) Options of ksort() function
|
||||
*
|
||||
* @return array|null
|
||||
*/
|
||||
public static function ksortRecursive(array &$array, $sortFlags = SORT_REGULAR)
|
||||
@@ -695,9 +714,10 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns count / amount of elements that are not array
|
||||
* Returns count / amount of elements that are not array.
|
||||
*
|
||||
* @param array $array The array to count
|
||||
*
|
||||
* @return int|null
|
||||
*/
|
||||
public static function getNonArrayElementsCount(array $array)
|
||||
@@ -715,6 +735,7 @@ class Arrays
|
||||
foreach ($array as &$value) {
|
||||
if (is_array($value)) {
|
||||
$count += self::getNonArrayElementsCount($value);
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -725,7 +746,7 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts given string with special separators to array
|
||||
* Converts given string with special separators to array.
|
||||
*
|
||||
* Example:
|
||||
* ~ string:
|
||||
@@ -740,6 +761,7 @@ class Arrays
|
||||
* @param string $string The string to be converted
|
||||
* @param string $separator (optional) Separator used between name-value pairs in the string
|
||||
* @param string $valuesKeysSeparator (optional) Separator used between name and value in the string
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function string2array($string, $separator = '|', $valuesKeysSeparator = ':')
|
||||
@@ -770,11 +792,12 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given keys exist in given array
|
||||
* Returns information if given keys exist in given array.
|
||||
*
|
||||
* @param array $keys The keys to find
|
||||
* @param array $array The array which maybe contains keys
|
||||
* @param bool $explicit (optional) If is set to true, all keys should exist in given array. Otherwise - not all.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function areKeysInArray($keys, $array, $explicit = true)
|
||||
@@ -812,7 +835,7 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns paths of the last elements
|
||||
* Returns paths of the last elements.
|
||||
*
|
||||
* @param array $array The array with elements
|
||||
* @param string $separator (optional) Separator used in resultant strings. Default: ".".
|
||||
@@ -820,6 +843,7 @@ class Arrays
|
||||
* @param string|array $stopIfMatchedBy (optional) Patterns of keys or paths that matched will stop the process
|
||||
* of path building and including children of those keys or paths (recursive
|
||||
* will not be used for keys in lower level of given array)
|
||||
*
|
||||
* @return array
|
||||
*
|
||||
* Examples - $stopIfMatchedBy argument:
|
||||
@@ -862,6 +886,7 @@ class Arrays
|
||||
|
||||
if (preg_match($pattern, $key) || preg_match($pattern, $path)) {
|
||||
$stopRecursion = true;
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -875,6 +900,7 @@ class Arrays
|
||||
*/
|
||||
if (!is_array($value) || (is_array($value) && empty($value)) || $stopRecursion) {
|
||||
$paths[$path] = $value;
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -892,9 +918,10 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Makes and returns an array for given variable
|
||||
* Makes and returns an array for given variable.
|
||||
*
|
||||
* @param mixed $variable Variable that should be an array
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function makeArray($variable)
|
||||
@@ -907,12 +934,13 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if keys / indexes of given array are matched by given pattern
|
||||
* Returns information if keys / indexes of given array are matched by given pattern.
|
||||
*
|
||||
* @param array $array The array to check
|
||||
* @param string $pattern The pattern which keys / indexes should match, e.g. "\d+"
|
||||
* @param bool $firstLevelOnly (optional) If is set to true, all keys / indexes are checked. Otherwise - from the
|
||||
* first level only.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function areAllKeysMatchedByPattern($array, $pattern, $firstLevelOnly = false)
|
||||
@@ -943,6 +971,7 @@ class Arrays
|
||||
*/
|
||||
if (!preg_match($pattern, $key)) {
|
||||
$areMatched = false;
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -960,11 +989,12 @@ class Arrays
|
||||
|
||||
/**
|
||||
* Returns information if keys / indexes of given array are integers, in other words if the array contains
|
||||
* zero-based keys / indexes
|
||||
* zero-based keys / indexes.
|
||||
*
|
||||
* @param array $array The array to check
|
||||
* @param bool $firstLevelOnly (optional) If is set to true, all keys / indexes are checked. Otherwise - from the
|
||||
* first level only.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function areAllKeysIntegers($array, $firstLevelOnly = false)
|
||||
@@ -980,6 +1010,7 @@ class Arrays
|
||||
*
|
||||
* @param array $array The array which should contains a value
|
||||
* @param array $keys Keys, path of keys, to find in given array
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* Examples:
|
||||
@@ -1029,6 +1060,7 @@ class Arrays
|
||||
*
|
||||
* @param array $array The array to check
|
||||
* @param array $keys Keys, path of keys, to find in given array
|
||||
*
|
||||
* @return bool
|
||||
*
|
||||
* Examples:
|
||||
@@ -1079,6 +1111,7 @@ class Arrays
|
||||
*
|
||||
* @param array $array The array which should contain values of the key
|
||||
* @param string $key The key
|
||||
*
|
||||
* @return array|null
|
||||
*/
|
||||
public static function getAllValuesOfKey(array $array, $key)
|
||||
@@ -1092,6 +1125,7 @@ class Arrays
|
||||
foreach ($array as $index => $value) {
|
||||
if ($index === $key) {
|
||||
$values[] = $value;
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -1108,7 +1142,7 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets positions for each element / child of given array and returns the array
|
||||
* Sets positions for each element / child of given array and returns the array.
|
||||
*
|
||||
* Position for the 1st element / child of a parent is set to 1 and incremented for the next element and
|
||||
* so on. Each parent is treated as separate array, so its elements are treated as positioned at 1st level.
|
||||
@@ -1117,6 +1151,7 @@ class Arrays
|
||||
* @param string $keyName (optional) Name of key which will contain the position value
|
||||
* @param int $startPosition (optional) Default, start value of the position for main / given array, not the
|
||||
* children
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function setPositions(array $array, $keyName = self::POSITION_KEY_NAME, $startPosition = null)
|
||||
@@ -1140,9 +1175,10 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Trims string values of given array and returns the new array
|
||||
* Trims string values of given array and returns the new array.
|
||||
*
|
||||
* @param array $array The array which values should be trimmed
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function trimRecursive(array $array)
|
||||
@@ -1155,6 +1191,7 @@ class Arrays
|
||||
foreach ($array as $key => $value) {
|
||||
if (is_array($value)) {
|
||||
$effect[$key] = self::trimRecursive($value);
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -1210,6 +1247,7 @@ class Arrays
|
||||
*
|
||||
* @param array $array An array to sort
|
||||
* @param array $keysOrder An array with keys of the 1st argument in proper / required order
|
||||
*
|
||||
* @return array|null
|
||||
*/
|
||||
public static function sortByCustomKeysOrder(array $array, array $keysOrder)
|
||||
@@ -1251,7 +1289,7 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns smartly imploded string
|
||||
* Returns smartly imploded string.
|
||||
*
|
||||
* Separators located at the beginning or end of elements are removed.
|
||||
* It's required to avoid problems with duplicated separator, e.g. "first//second/third", where separator is a
|
||||
@@ -1259,6 +1297,7 @@ class Arrays
|
||||
*
|
||||
* @param array $array The array with elements to implode
|
||||
* @param string $separator Separator used to stick together elements of given array
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function implodeSmart(array $array, $separator)
|
||||
@@ -1289,11 +1328,12 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given array is empty, iow. information if all elements of given array are empty
|
||||
* Returns information if given array is empty, iow. information if all elements of given array are empty.
|
||||
*
|
||||
* @param array $array The array to verify
|
||||
* @param bool $strictNull (optional) If is set to true elements are verified if they are null. Otherwise - only
|
||||
* if they are empty (e.g. null, '', 0, array()).
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function areAllValuesEmpty(array $array, $strictNull = false)
|
||||
@@ -1343,6 +1383,7 @@ class Arrays
|
||||
* @param array $array2 The 2nd array to verify
|
||||
* @param bool $valuesOnly (optional) If is set to true, compares values only. Otherwise - keys and values
|
||||
* (default behaviour).
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function arrayDiffRecursive(array $array1, array $array2, $valuesOnly = false)
|
||||
@@ -1429,10 +1470,11 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an index / key of given element in given array
|
||||
* Returns an index / key of given element in given array.
|
||||
*
|
||||
* @param array $array The array to verify
|
||||
* @param mixed $element The element who index / key is needed
|
||||
*
|
||||
* @return bool|null|mixed
|
||||
*/
|
||||
public static function getIndexOf(array $array, $element)
|
||||
@@ -1455,12 +1497,13 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an array with incremented indexes / keys
|
||||
* Returns an array with incremented indexes / keys.
|
||||
*
|
||||
* @param array $array The array which indexes / keys should be incremented
|
||||
* @param int|null $startIndex (optional) Index from which incrementation should be started. If not provided,
|
||||
* the first index / key will be used.
|
||||
* @param int $incrementStep (optional) Value used for incrementation. The step of incrementation.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function incrementIndexes(array $array, $startIndex = null, $incrementStep = 1)
|
||||
@@ -1511,10 +1554,11 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns next element of given array related to given element
|
||||
* Returns next element of given array related to given element.
|
||||
*
|
||||
* @param array $array The array with elements
|
||||
* @param mixed $element Element for who next element should be returned
|
||||
*
|
||||
* @return null|mixed
|
||||
*/
|
||||
public static function getNextElement(array $array, $element)
|
||||
@@ -1523,10 +1567,11 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns previous element of given array related to given element
|
||||
* Returns previous element of given array related to given element.
|
||||
*
|
||||
* @param array $array The array with elements
|
||||
* @param mixed $element Element for who previous element should be returned
|
||||
*
|
||||
* @return null|mixed
|
||||
*/
|
||||
public static function getPreviousElement(array $array, $element)
|
||||
@@ -1535,9 +1580,10 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given array is a multi dimensional array
|
||||
* Returns information if given array is a multi dimensional array.
|
||||
*
|
||||
* @param array $array The array to verify
|
||||
*
|
||||
* @return bool|null
|
||||
*/
|
||||
public static function isMultiDimensional(array $array)
|
||||
@@ -1554,9 +1600,10 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns count of dimensions, maximum nesting level actually, in given array
|
||||
* Returns count of dimensions, maximum nesting level actually, in given array.
|
||||
*
|
||||
* @param array $array The array to verify
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public static function getDimensionsCount(array $array)
|
||||
@@ -1581,11 +1628,12 @@ class Arrays
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns neighbour (next or previous element) for given element
|
||||
* Returns neighbour (next or previous element) for given element.
|
||||
*
|
||||
* @param array $array The array with elements
|
||||
* @param mixed $element Element for who next element should be returned
|
||||
* @param bool $next (optional) If is set to true, returns next neighbour. Otherwise - previous.
|
||||
*
|
||||
* @return mixed|null
|
||||
*/
|
||||
private static function getNeighbour(array $array, $element, $next = true)
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
namespace Meritoo\Common\Utilities;
|
||||
|
||||
/**
|
||||
* Useful methods for bundle
|
||||
* Useful methods for bundle.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -17,11 +17,12 @@ namespace Meritoo\Common\Utilities;
|
||||
class Bundle
|
||||
{
|
||||
/**
|
||||
* Returns path to view / template of given bundle
|
||||
* Returns path to view / template of given bundle.
|
||||
*
|
||||
* @param string $viewPath Path of the view / template, e.g. "MyDirectory/my-template"
|
||||
* @param string $bundleName Name of the bundle, e.g. "MyExtraBundle"
|
||||
* @param string $extension (optional) Extension of the view / template
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public static function getBundleViewPath($viewPath, $bundleName, $extension = 'html.twig')
|
||||
|
||||
@@ -11,7 +11,7 @@ namespace Meritoo\Common\Utilities;
|
||||
use stdClass;
|
||||
|
||||
/**
|
||||
* Useful Composer-related methods (only static functions)
|
||||
* Useful Composer-related methods (only static functions).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -19,17 +19,18 @@ use stdClass;
|
||||
class Composer
|
||||
{
|
||||
/**
|
||||
* Name of the Composer's main file with configuration in Json format
|
||||
* Name of the Composer's main file with configuration in Json format.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
const FILE_NAME_MAIN = 'composer.json';
|
||||
|
||||
/**
|
||||
* Returns value from composer.json file
|
||||
* Returns value from composer.json file.
|
||||
*
|
||||
* @param string $composerJsonPath Path of composer.json file
|
||||
* @param string $nodeName Name of node who value should be returned
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public static function getValue($composerJsonPath, $nodeName)
|
||||
|
||||
@@ -14,7 +14,7 @@ use Meritoo\Common\Exception\Date\UnknownDatePartTypeException;
|
||||
use Meritoo\Common\Type\DatePartType;
|
||||
|
||||
/**
|
||||
* Useful date methods
|
||||
* Useful date methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -66,6 +66,7 @@ class Date
|
||||
* The dates are returned in an array with indexes 'start' and 'end'.
|
||||
*
|
||||
* @param int $period The period, type of period. One of DatePeriod class constants, e.g. DatePeriod::LAST_WEEK.
|
||||
*
|
||||
* @return DatePeriod
|
||||
*/
|
||||
public static function getDatesForPeriod($period)
|
||||
@@ -160,10 +161,11 @@ class Date
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates and returns random time (the hour, minute and second values)
|
||||
* Generates and returns random time (the hour, minute and second values).
|
||||
*
|
||||
* @param string $format (optional) Format of returned value. A string acceptable by the DateTime::format()
|
||||
* method.
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public static function generateRandomTime($format = 'H:i:s')
|
||||
@@ -207,7 +209,7 @@ class Date
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns current day of week
|
||||
* Returns current day of week.
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
@@ -231,13 +233,14 @@ class Date
|
||||
* @param int $day The day value
|
||||
*
|
||||
* @return int
|
||||
*
|
||||
* @throws UnknownDatePartTypeException
|
||||
*/
|
||||
public static function getDayOfWeek($year, $month, $day)
|
||||
{
|
||||
$year = (int)$year;
|
||||
$month = (int)$month;
|
||||
$day = (int)$day;
|
||||
$year = (int) $year;
|
||||
$month = (int) $month;
|
||||
$day = (int) $day;
|
||||
|
||||
/*
|
||||
* Oops, incorrect year
|
||||
@@ -277,7 +280,7 @@ class Date
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns based on locale name of current weekday
|
||||
* Returns based on locale name of current weekday.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -293,11 +296,12 @@ class Date
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns name of weekday based on locale
|
||||
* Returns name of weekday based on locale.
|
||||
*
|
||||
* @param int $year The year value
|
||||
* @param int $month The month value
|
||||
* @param int $day The day value
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getDayOfWeekName($year, $month, $day)
|
||||
@@ -338,6 +342,7 @@ class Date
|
||||
* @param int $differenceUnit (optional) Unit of date difference. One of this class
|
||||
* DATE_DIFFERENCE_UNIT_* constants. If is set to null all units are
|
||||
* returned in the array.
|
||||
*
|
||||
* @return array|int
|
||||
*/
|
||||
public static function getDateDifference($dateStart, $dateEnd, $differenceUnit = null)
|
||||
@@ -405,7 +410,7 @@ class Date
|
||||
}
|
||||
|
||||
if ($differenceUnit === null || in_array($differenceUnit, $relatedUnits)) {
|
||||
$days = (int)floor($dateDiff / $daySeconds);
|
||||
$days = (int) floor($dateDiff / $daySeconds);
|
||||
|
||||
/*
|
||||
* Difference between dates in days should be returned only?
|
||||
@@ -428,7 +433,7 @@ class Date
|
||||
}
|
||||
|
||||
if ($differenceUnit === null || in_array($differenceUnit, $relatedUnits)) {
|
||||
$hours = (int)floor(($dateDiff - $daysInSeconds) / $hourSeconds);
|
||||
$hours = (int) floor(($dateDiff - $daysInSeconds) / $hourSeconds);
|
||||
|
||||
/*
|
||||
* Difference between dates in hours should be returned only?
|
||||
@@ -451,7 +456,7 @@ class Date
|
||||
}
|
||||
|
||||
if ($differenceUnit === null || $differenceUnit == self::DATE_DIFFERENCE_UNIT_MINUTES) {
|
||||
$minutes = (int)floor(($dateDiff - $daysInSeconds - $hoursInSeconds) / 60);
|
||||
$minutes = (int) floor(($dateDiff - $daysInSeconds - $hoursInSeconds) / 60);
|
||||
|
||||
/*
|
||||
* Difference between dates in minutes should be returned only?
|
||||
@@ -475,6 +480,7 @@ class Date
|
||||
* @param string $intervalTemplate (optional) Template used to build date interval. It should contain "%d" as the
|
||||
* placeholder which is replaced with a number that represents each iteration.
|
||||
* Default: interval for days.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function getDatesCollection(DateTime $startDate, $datesCount, $intervalTemplate = 'P%dD')
|
||||
@@ -500,7 +506,7 @@ class Date
|
||||
$matchCount = preg_match($intervalPattern, $intervalTemplate, $matches);
|
||||
|
||||
if ($matchCount > 0 && (!empty($matches[1]) || !empty($matches[2]))) {
|
||||
$datesCount = (int)$datesCount;
|
||||
$datesCount = (int) $datesCount;
|
||||
|
||||
for ($index = 1; $index <= $datesCount; ++$index) {
|
||||
$date = clone $startDate;
|
||||
@@ -513,13 +519,14 @@ class Date
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns random date based on given start date
|
||||
* Returns random date based on given start date.
|
||||
*
|
||||
* @param DateTime $startDate The start date. Start of the random date.
|
||||
* @param int $start (optional) Start of random partition
|
||||
* @param int $end (optional) End of random partition
|
||||
* @param string $intervalTemplate (optional) Template used to build date interval. The placeholder is replaced
|
||||
* with next, iterated value.
|
||||
*
|
||||
* @return DateTime
|
||||
*/
|
||||
public static function getRandomDate(DateTime $startDate = null, $start = 1, $end = 100, $intervalTemplate = 'P%sD')
|
||||
@@ -528,8 +535,8 @@ class Date
|
||||
$startDate = new DateTime();
|
||||
}
|
||||
|
||||
$start = (int)$start;
|
||||
$end = (int)$end;
|
||||
$start = (int) $start;
|
||||
$end = (int) $end;
|
||||
|
||||
/*
|
||||
* Incorrect end of random partition?
|
||||
@@ -556,6 +563,7 @@ class Date
|
||||
* @param string $dateFormat (optional) Format of date used to verify if given value is actually a date.
|
||||
* It should be format matched to the given value, e.g. "Y-m-d H:i" for
|
||||
* "2015-01-01 10:00" value.
|
||||
*
|
||||
* @return DateTime|bool
|
||||
*/
|
||||
public static function getDateTime($value, $allowCompoundFormats = false, $dateFormat = 'Y-m-d')
|
||||
@@ -658,12 +666,13 @@ class Date
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given value is valid date
|
||||
* Returns information if given value is valid date.
|
||||
*
|
||||
* @param mixed $value The value which maybe is a date
|
||||
* @param bool $allowCompoundFormats (optional) If is set to true, the compound formats used to create an
|
||||
* instance of DateTime class are allowed (e.g. "now", "last day of next
|
||||
* month", "yyyy"). Otherwise - not and every incorrect value is refused.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isValidDate($value, $allowCompoundFormats = false)
|
||||
@@ -672,9 +681,10 @@ class Date
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given format of date is valid
|
||||
* Returns information if given format of date is valid.
|
||||
*
|
||||
* @param string $format The validated format of date
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isValidDateFormat($format)
|
||||
|
||||
@@ -20,84 +20,84 @@ use DateTime;
|
||||
class DatePeriod
|
||||
{
|
||||
/**
|
||||
* The period constant: last month
|
||||
* The period constant: last month.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const LAST_MONTH = 4;
|
||||
|
||||
/**
|
||||
* The period constant: last week
|
||||
* The period constant: last week.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const LAST_WEEK = 1;
|
||||
|
||||
/**
|
||||
* The period constant: last year
|
||||
* The period constant: last year.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const LAST_YEAR = 7;
|
||||
|
||||
/**
|
||||
* The period constant: next month
|
||||
* The period constant: next month.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const NEXT_MONTH = 6;
|
||||
|
||||
/**
|
||||
* The period constant: next week
|
||||
* The period constant: next week.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const NEXT_WEEK = 3;
|
||||
|
||||
/**
|
||||
* The period constant: next year
|
||||
* The period constant: next year.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const NEXT_YEAR = 9;
|
||||
|
||||
/**
|
||||
* The period constant: this month
|
||||
* The period constant: this month.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const THIS_MONTH = 5;
|
||||
|
||||
/**
|
||||
* The period constant: this week
|
||||
* The period constant: this week.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const THIS_WEEK = 2;
|
||||
|
||||
/**
|
||||
* The period constant: this year
|
||||
* The period constant: this year.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
const THIS_YEAR = 8;
|
||||
|
||||
/**
|
||||
* The start date of period
|
||||
* The start date of period.
|
||||
*
|
||||
* @var DateTime
|
||||
*/
|
||||
private $startDate;
|
||||
|
||||
/**
|
||||
* The end date of period
|
||||
* The end date of period.
|
||||
*
|
||||
* @var DateTime
|
||||
*/
|
||||
private $endDate;
|
||||
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param DateTime $startDate (optional) The start date of period
|
||||
* @param DateTime $endDate (optional) The end date of period
|
||||
@@ -109,9 +109,10 @@ class DatePeriod
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given period is correct
|
||||
* Returns information if given period is correct.
|
||||
*
|
||||
* @param int $period The period to verify
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isCorrectPeriod($period)
|
||||
@@ -120,10 +121,11 @@ class DatePeriod
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns formatted one of the period's date: start date or end date
|
||||
* Returns formatted one of the period's date: start date or end date.
|
||||
*
|
||||
* @param string $format Format used to format the date
|
||||
* @param bool $startDate (optional) If is set to true, start date is formatted. Otherwise - end date.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getFormattedDate($format, $startDate = true)
|
||||
@@ -148,7 +150,7 @@ class DatePeriod
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the end date of period
|
||||
* Returns the end date of period.
|
||||
*
|
||||
* @return DateTime
|
||||
*/
|
||||
@@ -158,9 +160,10 @@ class DatePeriod
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the end date of period
|
||||
* Sets the end date of period.
|
||||
*
|
||||
* @param DateTime $endDate (optional) The end date of period
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setEndDate(DateTime $endDate = null)
|
||||
@@ -171,7 +174,7 @@ class DatePeriod
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the start date of period
|
||||
* Returns the start date of period.
|
||||
*
|
||||
* @return DateTime
|
||||
*/
|
||||
@@ -181,9 +184,10 @@ class DatePeriod
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the start date of period
|
||||
* Sets the start date of period.
|
||||
*
|
||||
* @param DateTime $startDate (optional) The start date of period
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setStartDate(DateTime $startDate = null)
|
||||
|
||||
@@ -11,7 +11,7 @@ namespace Meritoo\Common\Utilities;
|
||||
use Generator;
|
||||
|
||||
/**
|
||||
* Useful methods for the Generator class (only static functions)
|
||||
* Useful methods for the Generator class (only static functions).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -19,9 +19,10 @@ use Generator;
|
||||
class GeneratorUtility
|
||||
{
|
||||
/**
|
||||
* Returns elements of generator
|
||||
* Returns elements of generator.
|
||||
*
|
||||
* @param Generator $generator The generator who elements should be returned
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function getGeneratorElements(Generator $generator)
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
namespace Meritoo\Common\Utilities;
|
||||
|
||||
/**
|
||||
* Useful locale methods
|
||||
* Useful locale methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -17,12 +17,13 @@ namespace Meritoo\Common\Utilities;
|
||||
class Locale
|
||||
{
|
||||
/**
|
||||
* Sets locale for given category using given language and country code
|
||||
* Sets locale for given category using given language and country code.
|
||||
*
|
||||
* @param int $category Named constant specifying the category of the functions affected by the locale
|
||||
* setting. It's the same constant as required by setlocale() function.
|
||||
* @param string $languageCode Language code, in ISO 639-1 format. Short form of the locale, e.g. "fr".
|
||||
* @param string $countryCode (optional) Country code, in ISO 3166-1 alpha-2 format, e.g. "FR"
|
||||
*
|
||||
* @return bool
|
||||
*
|
||||
* Available categories (values of $category argument):
|
||||
@@ -36,7 +37,7 @@ class Locale
|
||||
*/
|
||||
public static function setLocale($category, $languageCode, $countryCode = '')
|
||||
{
|
||||
$category = (int)$category;
|
||||
$category = (int) $category;
|
||||
|
||||
if (is_string($languageCode)) {
|
||||
$languageCode = trim($languageCode);
|
||||
@@ -63,11 +64,12 @@ class Locale
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns long form of the locale
|
||||
* Returns long form of the locale.
|
||||
*
|
||||
* @param string $languageCode Language code, in ISO 639-1 format. Short form of the locale, e.g. "fr".
|
||||
* @param string $countryCode (optional) Country code, in ISO 3166-1 alpha-2 format, e.g. "FR"
|
||||
* @param string $encoding (optional) Encoding of the final locale
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* Example:
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -13,7 +13,7 @@ use Symfony\Component\HttpFoundation\Cookie;
|
||||
use Transliterator;
|
||||
|
||||
/**
|
||||
* Miscellaneous methods (only static functions)
|
||||
* Miscellaneous methods (only static functions).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -21,13 +21,14 @@ use Transliterator;
|
||||
class Miscellaneous
|
||||
{
|
||||
/**
|
||||
* Returns directory's content (names of directories and files)
|
||||
* Returns directory's content (names of directories and files).
|
||||
*
|
||||
* @param string $directoryPath Path of directory who content should be returned
|
||||
* @param bool $recursive (optional) If is set to true, sub-directories are also searched for content.
|
||||
* Otherwise - only content of given directory is returned.
|
||||
* @param int $maxFilesCount (optional) Maximum files that will be returned. If it's null, all files are
|
||||
* returned.
|
||||
*
|
||||
* @return array|null
|
||||
*/
|
||||
public static function getDirectoryContent($directoryPath, $recursive = false, $maxFilesCount = null)
|
||||
@@ -76,8 +77,8 @@ class Miscellaneous
|
||||
continue;
|
||||
}
|
||||
|
||||
if ($recursive && is_dir($directoryPath . $fileName)) {
|
||||
$content = self::getDirectoryContent($directoryPath . $fileName, true, $maxFilesCount - $count);
|
||||
if ($recursive && is_dir($directoryPath.$fileName)) {
|
||||
$content = self::getDirectoryContent($directoryPath.$fileName, true, $maxFilesCount - $count);
|
||||
}
|
||||
|
||||
if ($content !== null) {
|
||||
@@ -105,9 +106,10 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given path it's a file's path, if the path contains file name
|
||||
* Returns information if given path it's a file's path, if the path contains file name.
|
||||
*
|
||||
* @param string $path The path to check
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isFilePath($path)
|
||||
@@ -118,15 +120,16 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts checkbox value to boolean
|
||||
* Converts checkbox value to boolean.
|
||||
*
|
||||
* @param string $checkboxValue Checkbox value
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function checkboxValue2Boolean($checkboxValue)
|
||||
{
|
||||
$mapping = [
|
||||
'on' => true,
|
||||
'on' => true,
|
||||
'off' => false,
|
||||
];
|
||||
|
||||
@@ -140,21 +143,23 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts checkbox value to integer
|
||||
* Converts checkbox value to integer.
|
||||
*
|
||||
* @param string $checkboxValue Checkbox value
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public static function checkboxValue2Integer($checkboxValue)
|
||||
{
|
||||
return (int)self::checkboxValue2Boolean($checkboxValue);
|
||||
return (int) self::checkboxValue2Boolean($checkboxValue);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns name of file with given extension after verification if it contains the extension
|
||||
* Returns name of file with given extension after verification if it contains the extension.
|
||||
*
|
||||
* @param string $fileName The file name to verify
|
||||
* @param string $extension The extension to verify and include
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function includeFileExtension($fileName, $extension)
|
||||
@@ -167,10 +172,11 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns file extension
|
||||
* Returns file extension.
|
||||
*
|
||||
* @param string $fileName File name
|
||||
* @param bool $asLowerCase (optional) if true extension is returned as lowercase string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getFileExtension($fileName, $asLowerCase = false)
|
||||
@@ -190,9 +196,10 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns file name from given path
|
||||
* Returns file name from given path.
|
||||
*
|
||||
* @param string $path A path that contains file name
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getFileNameFromPath($path)
|
||||
@@ -200,7 +207,7 @@ class Miscellaneous
|
||||
$matches = [];
|
||||
$pattern = sprintf('|([^\%s.]+\.[A-Za-z0-9.]+)$|', DIRECTORY_SEPARATOR);
|
||||
|
||||
if ((bool)preg_match($pattern, $path, $matches)) {
|
||||
if ((bool) preg_match($pattern, $path, $matches)) {
|
||||
return $matches[1];
|
||||
}
|
||||
|
||||
@@ -208,11 +215,12 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns unique name for file based on given original name
|
||||
* Returns unique name for file based on given original name.
|
||||
*
|
||||
* @param string $originalFileName Original name of the file
|
||||
* @param int $objectId (optional) Object ID, the ID of database's row. May be included into the
|
||||
* generated / unique name.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getUniqueFileName($originalFileName, $objectId = 0)
|
||||
@@ -260,16 +268,17 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns file name without extension
|
||||
* Returns file name without extension.
|
||||
*
|
||||
* @param string $fileName The file name
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getFileNameWithoutExtension($fileName)
|
||||
{
|
||||
$matches = [];
|
||||
|
||||
if (is_string($fileName) && (bool)preg_match('|(.+)\.(.+)|', $fileName, $matches)) {
|
||||
if (is_string($fileName) && (bool) preg_match('|(.+)\.(.+)|', $fileName, $matches)) {
|
||||
return $matches[1];
|
||||
}
|
||||
|
||||
@@ -277,15 +286,16 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts value to non-negative integer (element of the set {0, 1, 2, 3, ...})
|
||||
* Converts value to non-negative integer (element of the set {0, 1, 2, 3, ...}).
|
||||
*
|
||||
* @param mixed $value Value to convert
|
||||
* @param int $negativeReplacement (optional) Replacement for negative value
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public static function value2NonNegativeInteger($value, $negativeReplacement = 0)
|
||||
{
|
||||
$effect = (int)$value;
|
||||
$effect = (int) $value;
|
||||
|
||||
if ($effect < 0) {
|
||||
return $negativeReplacement;
|
||||
@@ -295,7 +305,7 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Displays variable content as preformatted text (fixed-width font and preserves both spaces and line breaks)
|
||||
* Displays variable content as preformatted text (fixed-width font and preserves both spaces and line breaks).
|
||||
*
|
||||
* If xdebug php module is loaded, displays variable using var_dump(), otherwise <pre>var_dump()</pre>.
|
||||
* You can pass as many variables as you wish.
|
||||
@@ -323,9 +333,10 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given PHP module is compiled and loaded
|
||||
* Returns information if given PHP module is compiled and loaded.
|
||||
*
|
||||
* @param string $phpModuleName PHP module name
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isPhpModuleLoaded($phpModuleName)
|
||||
@@ -336,13 +347,14 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts given string characters to latin characters
|
||||
* Converts given string characters to latin characters.
|
||||
*
|
||||
* @param string $string String to convert
|
||||
* @param bool $lowerCaseHuman (optional) If is set to true, converted string is returned as lowercase and
|
||||
* human-readable. Otherwise - as original.
|
||||
* @param string $replacementChar (optional) Replacement character for all non-latin characters and uppercase
|
||||
* letters, if 2nd argument is set to true
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function toLatin($string, $lowerCaseHuman = true, $replacementChar = '-')
|
||||
@@ -394,11 +406,12 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns unique string
|
||||
* Returns unique string.
|
||||
*
|
||||
* @param string $prefix (optional) Prefix of the unique string. May be used while generating the unique
|
||||
* string simultaneously on several hosts at the same microsecond.
|
||||
* @param bool $hashed (optional) If is set to true, the unique string is hashed additionally. Otherwise - not.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getUniqueString($prefix = '', $hashed = false)
|
||||
@@ -422,6 +435,7 @@ class Miscellaneous
|
||||
* @param string|array $replacement The string or an array of strings to replace. It may be: string or an array
|
||||
* of strings.
|
||||
* @param bool $quoteStrings (optional) If is set to true, strings are surrounded with single quote sign
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* Example:
|
||||
@@ -475,7 +489,7 @@ class Miscellaneous
|
||||
*/
|
||||
if ($searchIsString && $replacementIsString) {
|
||||
if ($quoteStrings) {
|
||||
$replacement = '\'' . $replacement . '\'';
|
||||
$replacement = '\''.$replacement.'\'';
|
||||
}
|
||||
|
||||
$effect = str_replace($search, $replacement, $subject);
|
||||
@@ -487,7 +501,7 @@ class Miscellaneous
|
||||
*/
|
||||
if ($effect == $subject && ($bothAreStrings || $bothAreArrays)) {
|
||||
if ($quoteStrings && $replacementIsString) {
|
||||
$replacement = '\'' . $replacement . '\'';
|
||||
$replacement = '\''.$replacement.'\'';
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -529,7 +543,7 @@ class Miscellaneous
|
||||
if ($quoteStrings) {
|
||||
foreach ($replacement as &$item) {
|
||||
if (is_string($item)) {
|
||||
$item = '\'' . $item . '\'';
|
||||
$item = '\''.$item.'\'';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -549,6 +563,7 @@ class Miscellaneous
|
||||
|
||||
if ($subjectIsArray) {
|
||||
$effect[] = $subEffect;
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -560,11 +575,12 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns new file name after adding prefix or suffix (or both of them) to the name
|
||||
* Returns new file name after adding prefix or suffix (or both of them) to the name.
|
||||
*
|
||||
* @param string $fileName The file name
|
||||
* @param string $prefix File name prefix
|
||||
* @param string $suffix File name suffix
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getNewFileName($fileName, $prefix, $suffix)
|
||||
@@ -582,7 +598,7 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns operating system name PHP is running on
|
||||
* Returns operating system name PHP is running on.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -592,11 +608,12 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns part of string preserving words
|
||||
* Returns part of string preserving words.
|
||||
*
|
||||
* @param string $text The string / text
|
||||
* @param int $maxLength Maximum length of given string
|
||||
* @param string $suffix (optional) The suffix to add at the end of string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function substringToWord($text, $maxLength, $suffix = '...')
|
||||
@@ -623,13 +640,14 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Breaks long text
|
||||
* Breaks long text.
|
||||
*
|
||||
* @param string $text The text to check and break
|
||||
* @param int $perLine (optional) Characters count per line
|
||||
* @param string $separator (optional) Separator that is placed beetwen lines
|
||||
* @param string $encoding (optional) Character encoding. Used by mb_substr().
|
||||
* @param int $proportionalAberration (optional) Proportional aberration for chars (percent value)
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function breakLongText(
|
||||
@@ -717,6 +735,7 @@ class Miscellaneous
|
||||
* @param string $directoryPath Directory path
|
||||
* @param bool $contentOnly (optional) If is set to true, only content of the directory is removed, not
|
||||
* directory. Otherwise - directory is removed too.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function removeDirectory($directoryPath, $contentOnly = false)
|
||||
@@ -734,7 +753,7 @@ class Miscellaneous
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!self::removeDirectory($directoryPath . DIRECTORY_SEPARATOR . $item)) {
|
||||
if (!self::removeDirectory($directoryPath.DIRECTORY_SEPARATOR.$item)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -747,21 +766,23 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if value is decimal
|
||||
* Returns information if value is decimal.
|
||||
*
|
||||
* @param mixed $value The value to check
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isDecimal($value)
|
||||
{
|
||||
return is_scalar($value) && floor($value) !== (float)$value;
|
||||
return is_scalar($value) && floor($value) !== (float) $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the string in camel case
|
||||
* Returns the string in camel case.
|
||||
*
|
||||
* @param string $string The string to convert e.g. this-is-eXamplE (return: thisIsExample)
|
||||
* @param string $separator (optional) Separator used to find parts of the string, e.g. '-' or ','
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getCamelCase($string, $separator = ' ')
|
||||
@@ -787,10 +808,11 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Make a string's first character lowercase
|
||||
* Make a string's first character lowercase.
|
||||
*
|
||||
* @param string $text The text to get first character lowercase
|
||||
* @param bool|null $restLowercase (optional) Information that to do with rest of given string
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* Values of the $restLowercase argument:
|
||||
@@ -822,17 +844,18 @@ class Miscellaneous
|
||||
$first = mb_strtolower($effect[0]);
|
||||
$rest = mb_substr($effect, 1);
|
||||
|
||||
$effect = $first . $rest;
|
||||
$effect = $first.$rest;
|
||||
}
|
||||
|
||||
return $effect;
|
||||
}
|
||||
|
||||
/**
|
||||
* Make a string's first character uppercase
|
||||
* Make a string's first character uppercase.
|
||||
*
|
||||
* @param string $text The text to get uppercase
|
||||
* @param bool|null $restLowercase (optional) Information that to do with rest of given string
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* Values of the $restLowercase argument:
|
||||
@@ -860,17 +883,18 @@ class Miscellaneous
|
||||
$first = mb_strtoupper($effect[0]);
|
||||
$rest = mb_substr($effect, 1);
|
||||
|
||||
$effect = $first . $rest;
|
||||
$effect = $first.$rest;
|
||||
}
|
||||
|
||||
return $effect;
|
||||
}
|
||||
|
||||
/**
|
||||
* Quotes given value with apostrophes or quotation marks
|
||||
* Quotes given value with apostrophes or quotation marks.
|
||||
*
|
||||
* @param mixed $value The value to quote
|
||||
* @param bool $useApostrophe (optional) If is set to true, apostrophes are used. Otherwise - quotation marks.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function quoteValue($value, $useApostrophe = true)
|
||||
@@ -889,9 +913,10 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns size (of file or directory) in human readable format
|
||||
* Returns size (of file or directory) in human readable format.
|
||||
*
|
||||
* @param int $sizeInBytes The size in bytes
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getHumanReadableSize($sizeInBytes)
|
||||
@@ -907,7 +932,7 @@ class Miscellaneous
|
||||
$index = floor(log($sizeInBytes, 1024));
|
||||
|
||||
$size = round($sizeInBytes / pow(1024, $index), 2);
|
||||
$unit = $units[(int)$index];
|
||||
$unit = $units[(int) $index];
|
||||
|
||||
return sprintf('%s %s', $size, $unit);
|
||||
}
|
||||
@@ -918,6 +943,7 @@ class Miscellaneous
|
||||
*
|
||||
* @param string $string The string to check
|
||||
* @param string $separator The separator which divides elements of string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getStringWithoutLastElement($string, $separator)
|
||||
@@ -931,10 +957,11 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns elements of given string divided by given separator
|
||||
* Returns elements of given string divided by given separator.
|
||||
*
|
||||
* @param string $string The string to check
|
||||
* @param string $separator The separator which divides elements of string
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function getStringElements($string, $separator)
|
||||
@@ -951,10 +978,11 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the last element of given string divided by given separator
|
||||
* Returns the last element of given string divided by given separator.
|
||||
*
|
||||
* @param string $string The string to check
|
||||
* @param string $separator The separator which divides elements of string
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public static function getLastElementOfString($string, $separator)
|
||||
@@ -979,6 +1007,7 @@ class Miscellaneous
|
||||
* If the string is empty, contains only spaces, e.g. " ", nothing is done and the original string is returned.
|
||||
*
|
||||
* @param string $string The string to trim
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function trimSmart($string)
|
||||
@@ -993,7 +1022,7 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns concatenated given paths
|
||||
* Returns concatenated given paths.
|
||||
*
|
||||
* The paths may be passed as:
|
||||
* - an array of paths / strings
|
||||
@@ -1005,6 +1034,7 @@ class Miscellaneous
|
||||
*
|
||||
* @param string|array $paths Paths co concatenate. As described above: an array of paths / strings or strings
|
||||
* passed as following arguments.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function concatenatePaths($paths)
|
||||
@@ -1067,6 +1097,7 @@ class Miscellaneous
|
||||
*/
|
||||
if ($firstWindowsBased && empty($concatenated)) {
|
||||
$concatenated = $path;
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -1080,11 +1111,12 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the starting / beginning directory's separator
|
||||
* Removes the starting / beginning directory's separator.
|
||||
*
|
||||
* @param string $text Text that may contain a directory's separator at the start / beginning
|
||||
* @param string $separator (optional) The directory's separator, e.g. "/". If is empty (not provided), separator
|
||||
* provided by operating system will be used.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function removeStartingDirectorySeparator($text, $separator = '')
|
||||
@@ -1111,11 +1143,12 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the ending directory's separator
|
||||
* Removes the ending directory's separator.
|
||||
*
|
||||
* @param string $text Text that may contain a directory's separator at the end
|
||||
* @param string $separator (optional) The directory's separator, e.g. "/". If is empty (not provided), system's
|
||||
* separator is used.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function removeEndingDirectorySeparator($text, $separator = '')
|
||||
@@ -1142,11 +1175,12 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns safely value of global variable, found in one of the global arrays / variables, e.g. $_GET
|
||||
* Returns safely value of global variable, found in one of the global arrays / variables, e.g. $_GET.
|
||||
*
|
||||
* @param int $globalSourceType Represents the global array / variable. One of constants: INPUT_GET, INPUT_POST,
|
||||
* INPUT_COOKIE, INPUT_SERVER, or INPUT_ENV.
|
||||
* @param string $variableName Name of the variable to return value
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public static function getSafelyGlobalVariable($globalSourceType, $variableName)
|
||||
@@ -1159,22 +1193,27 @@ class Miscellaneous
|
||||
switch ($globalSourceType) {
|
||||
case INPUT_GET:
|
||||
$globalSource = $_GET;
|
||||
|
||||
break;
|
||||
|
||||
case INPUT_POST:
|
||||
$globalSource = $_POST;
|
||||
|
||||
break;
|
||||
|
||||
case INPUT_COOKIE:
|
||||
$globalSource = $_COOKIE;
|
||||
|
||||
break;
|
||||
|
||||
case INPUT_SERVER:
|
||||
$globalSource = $_SERVER;
|
||||
|
||||
break;
|
||||
|
||||
case INPUT_ENV:
|
||||
$globalSource = $_ENV;
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1191,7 +1230,7 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a CURL response with parsed HTTP headers as array with "headers", "cookies" and "content" keys
|
||||
* Returns a CURL response with parsed HTTP headers as array with "headers", "cookies" and "content" keys.
|
||||
*
|
||||
* The headers and cookies are parsed and returned as an array, and an array of Cookie objects. Returned array looks
|
||||
* like this example:
|
||||
@@ -1216,6 +1255,7 @@ class Miscellaneous
|
||||
*
|
||||
* @param string $response the full content of response, including HTTP headers
|
||||
* @param int $headerSize The length of HTTP headers in content
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function getCurlResponseWithHeaders($response, $headerSize)
|
||||
@@ -1263,6 +1303,7 @@ class Miscellaneous
|
||||
if ($j === 0) {
|
||||
$name = trim($param[0]);
|
||||
$value = trim($param[1]);
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -1284,18 +1325,23 @@ class Miscellaneous
|
||||
switch ($paramName) {
|
||||
case 'expires':
|
||||
$expire = $paramValue;
|
||||
|
||||
break;
|
||||
case 'path':
|
||||
$path = $paramValue;
|
||||
|
||||
break;
|
||||
case 'domain':
|
||||
$domain = $paramValue;
|
||||
|
||||
break;
|
||||
case 'secure':
|
||||
$secure = $paramValue;
|
||||
|
||||
break;
|
||||
case 'httponly':
|
||||
$httpOnly = $paramValue;
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -1305,6 +1351,7 @@ class Miscellaneous
|
||||
* I must skip to next header as cookies shouldn't be saved in "headers" array.
|
||||
*/
|
||||
$cookies[] = new Cookie($name, $value, $expire, $path, $domain, $secure, $httpOnly);
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -1323,7 +1370,7 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds missing the "0" characters to given number until given length is reached
|
||||
* Adds missing the "0" characters to given number until given length is reached.
|
||||
*
|
||||
* Example:
|
||||
* - number: 201
|
||||
@@ -1336,6 +1383,7 @@ class Miscellaneous
|
||||
* @param mixed $number Number for who the "0" characters should be inserted
|
||||
* @param int $length Wanted length of final number
|
||||
* @param bool $before (optional) If false, 0 characters will be inserted after given number
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function fillMissingZeros($number, $length, $before = true)
|
||||
@@ -1357,22 +1405,24 @@ class Miscellaneous
|
||||
|
||||
for ($i = ($length - $textLength); 0 < $i; --$i) {
|
||||
if ($before) {
|
||||
$text = '0' . $text;
|
||||
$text = '0'.$text;
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
$text = $text . '0';
|
||||
$text = $text.'0';
|
||||
}
|
||||
|
||||
return $text;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given value is located in interval between given utmost left and right values
|
||||
* Returns information if given value is located in interval between given utmost left and right values.
|
||||
*
|
||||
* @param int|float $value Value to verify
|
||||
* @param int|float $left Left utmost value of interval
|
||||
* @param int|float $right Right utmost value of interval
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isBetween($value, $left, $right)
|
||||
@@ -1385,6 +1435,7 @@ class Miscellaneous
|
||||
* If it's an object, full class name is returned.
|
||||
*
|
||||
* @param mixed $variable Variable who type should be returned
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getType($variable)
|
||||
@@ -1403,11 +1454,12 @@ class Miscellaneous
|
||||
* @param int $colorComponent Color's component to verify. Decimal value, e.g. 255.
|
||||
* @param bool $asHexadecimal (optional) If is set to true, hexadecimal value is returned (default behaviour).
|
||||
* Otherwise - decimal.
|
||||
*
|
||||
* @return int|string
|
||||
*/
|
||||
public static function getValidColorComponent($colorComponent, $asHexadecimal = true)
|
||||
{
|
||||
$colorComponent = (int)$colorComponent;
|
||||
$colorComponent = (int) $colorComponent;
|
||||
|
||||
if ($colorComponent < 0 || $colorComponent > 255) {
|
||||
$colorComponent = 0;
|
||||
@@ -1427,9 +1479,10 @@ class Miscellaneous
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns inverted value of color for given color
|
||||
* Returns inverted value of color for given color.
|
||||
*
|
||||
* @param string $color Hexadecimal value of color to invert (with or without hash), e.g. "dd244c" or "#22a5fe"
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getInvertedColor($color)
|
||||
|
||||
@@ -15,7 +15,7 @@ use Doctrine\ORM\Query\Parameter;
|
||||
use Doctrine\ORM\QueryBuilder;
|
||||
|
||||
/**
|
||||
* Useful methods for query builder (the Doctrine's QueryBuilder class)
|
||||
* Useful methods for query builder (the Doctrine's QueryBuilder class).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -27,6 +27,7 @@ class QueryBuilderUtility
|
||||
* If null is returned, alias was not found.
|
||||
*
|
||||
* @param QueryBuilder $queryBuilder The query builder to retrieve root alias
|
||||
*
|
||||
* @return null|string
|
||||
*/
|
||||
public static function getRootAlias(QueryBuilder $queryBuilder)
|
||||
@@ -47,6 +48,7 @@ class QueryBuilderUtility
|
||||
*
|
||||
* @param QueryBuilder $queryBuilder The query builder to verify
|
||||
* @param string $property Name of property that maybe is joined
|
||||
*
|
||||
* @return null|string
|
||||
*/
|
||||
public static function getJoinedPropertyAlias(QueryBuilder $queryBuilder, $property)
|
||||
@@ -75,13 +77,14 @@ class QueryBuilderUtility
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the WHERE criteria in given query builder
|
||||
* Sets the WHERE criteria in given query builder.
|
||||
*
|
||||
* @param QueryBuilder $queryBuilder The query builder
|
||||
* @param array $criteria (optional) The criteria used in WHERE clause. It may simple array with pairs
|
||||
* key-value or an array of arrays where second element of sub-array is the
|
||||
* comparison operator. Example below.
|
||||
* @param string $alias (optional) Alias used in the query
|
||||
*
|
||||
* @return QueryBuilder
|
||||
*
|
||||
* Example of the $criteria argument:
|
||||
@@ -132,12 +135,13 @@ class QueryBuilderUtility
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes given entities
|
||||
* Deletes given entities.
|
||||
*
|
||||
* @param EntityManager $entityManager The entity manager
|
||||
* @param array|ArrayCollection $entities The entities to delete
|
||||
* @param bool $flushDeleted (optional) If is set to true, flushes the deleted objects.
|
||||
* Otherwise - not.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function deleteEntities(EntityManager $entityManager, $entities, $flushDeleted = true)
|
||||
@@ -171,6 +175,7 @@ class QueryBuilderUtility
|
||||
* @param QueryBuilder $queryBuilder The query builder
|
||||
* @param array|ArrayCollection $parameters Parameters to add. Collection of instances of
|
||||
* Doctrine\ORM\Query\Parameter class or an array with key-value pairs.
|
||||
*
|
||||
* @return QueryBuilder
|
||||
*/
|
||||
public static function addParameters(QueryBuilder $queryBuilder, $parameters)
|
||||
|
||||
@@ -21,7 +21,7 @@ use ReflectionObject;
|
||||
use ReflectionProperty;
|
||||
|
||||
/**
|
||||
* Useful reflection methods
|
||||
* Useful reflection methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -29,11 +29,12 @@ use ReflectionProperty;
|
||||
class Reflection
|
||||
{
|
||||
/**
|
||||
* Returns names of methods for given class / object
|
||||
* Returns names of methods for given class / object.
|
||||
*
|
||||
* @param object|string $class The object or name of object's class
|
||||
* @param bool $withoutInheritance (optional) If is set to true, only methods for given class are returned.
|
||||
* Otherwise - all methods, with inherited methods too.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function getMethods($class, $withoutInheritance = false)
|
||||
@@ -61,9 +62,10 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns constants of given class / object
|
||||
* Returns constants of given class / object.
|
||||
*
|
||||
* @param object|string $class The object or name of object's class
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function getConstants($class)
|
||||
@@ -78,6 +80,7 @@ class Reflection
|
||||
* Values of constants should be integers.
|
||||
*
|
||||
* @param object|string $class The object or name of object's class
|
||||
*
|
||||
* @return int|null
|
||||
*/
|
||||
public static function getMaxNumberConstant($class)
|
||||
@@ -100,10 +103,11 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given class / object has given method
|
||||
* Returns information if given class / object has given method.
|
||||
*
|
||||
* @param object|string $class The object or name of object's class
|
||||
* @param string $method Name of the method to find
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function hasMethod($class, $method)
|
||||
@@ -114,10 +118,11 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given class / object has given property
|
||||
* Returns information if given class / object has given property.
|
||||
*
|
||||
* @param object|string $class The object or name of object's class
|
||||
* @param string $property Name of the property to find
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function hasProperty($class, $property)
|
||||
@@ -128,10 +133,11 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given class / object has given constant
|
||||
* Returns information if given class / object has given constant.
|
||||
*
|
||||
* @param object|string $class The object or name of object's class
|
||||
* @param string $constant Name of the constant to find
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function hasConstant($class, $constant)
|
||||
@@ -142,10 +148,11 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns value of given constant
|
||||
* Returns value of given constant.
|
||||
*
|
||||
* @param object|string $class The object or name of object's class
|
||||
* @param string $constant Name of the constant that contains a value
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public static function getConstantValue($class, $constant)
|
||||
@@ -168,6 +175,7 @@ class Reflection
|
||||
* dot-separated, e.g. "invoice.user.email".
|
||||
* @param bool $force (optional) If is set to true, try to retrieve value even if the object doesn't have
|
||||
* property. Otherwise - not.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public static function getPropertyValue($object, $property, $force = false)
|
||||
@@ -241,6 +249,7 @@ class Reflection
|
||||
if ($class->hasMethod($method)) {
|
||||
$value = $object->{$method}();
|
||||
$valueFound = true;
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -271,6 +280,7 @@ class Reflection
|
||||
* @param string $property Name of the property that contains a value
|
||||
* @param bool $force (optional) If is set to true, try to retrieve value even if the
|
||||
* object does not have property. Otherwise - not.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function getPropertyValues($objects, $property, $force = false)
|
||||
@@ -294,11 +304,12 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a class name for given source
|
||||
* Returns a class name for given source.
|
||||
*
|
||||
* @param array|object|string $source An array of objects, namespaces, object or namespace
|
||||
* @param bool $withoutNamespace (optional) If is set to true, namespace is omitted. Otherwise -
|
||||
* not, full name of class is returned, with namespace.
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public static function getClassName($source, $withoutNamespace = false)
|
||||
@@ -356,9 +367,10 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns namespace of class for given source
|
||||
* Returns namespace of class for given source.
|
||||
*
|
||||
* @param array|object|string $source An array of objects, namespaces, object or namespace
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getClassNamespace($source)
|
||||
@@ -379,10 +391,11 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given interface is implemented by given class / object
|
||||
* Returns information if given interface is implemented by given class / object.
|
||||
*
|
||||
* @param array|object|string $source An array of objects, namespaces, object or namespace
|
||||
* @param string $interface The interface that should be implemented
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isInterfaceImplemented($source, $interface)
|
||||
@@ -394,10 +407,11 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given child class is a subclass of given parent class
|
||||
* Returns information if given child class is a subclass of given parent class.
|
||||
*
|
||||
* @param array|object|string $childClass The child class. An array of objects, namespaces, object or namespace.
|
||||
* @param array|object|string $parentClass The parent class. An array of objects, namespaces, object or namespace.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isChildOfClass($childClass, $parentClass)
|
||||
@@ -415,11 +429,12 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns given object properties
|
||||
* Returns given object properties.
|
||||
*
|
||||
* @param array|object|string $source An array of objects, namespaces, object or namespace
|
||||
* @param int $filter (optional) Filter of properties. Uses ReflectionProperty class constants.
|
||||
* By default all properties are returned.
|
||||
*
|
||||
* @return array|ReflectionProperty
|
||||
*/
|
||||
public static function getProperties($source, $filter = null)
|
||||
@@ -438,9 +453,10 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a parent class
|
||||
* Returns a parent class.
|
||||
*
|
||||
* @param array|object|string $source An array of objects, namespaces, object or namespace
|
||||
*
|
||||
* @return ReflectionClass
|
||||
*/
|
||||
public static function getParentClass($source)
|
||||
@@ -457,7 +473,9 @@ class Reflection
|
||||
*
|
||||
* @param array|object|string $class Class who child classes should be returned. An array of objects, strings,
|
||||
* object or string.
|
||||
*
|
||||
* @return array|null
|
||||
*
|
||||
* @throws CannotResolveClassNameException
|
||||
*/
|
||||
public static function getChildClasses($class)
|
||||
@@ -512,6 +530,7 @@ class Reflection
|
||||
*
|
||||
* @param array|object|string $parentClass Class who child class should be returned. An array of objects,
|
||||
* namespaces, object or namespace.
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @throws MissingChildClassesException
|
||||
@@ -541,12 +560,13 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns property, the ReflectionProperty instance, of given object
|
||||
* Returns property, the ReflectionProperty instance, of given object.
|
||||
*
|
||||
* @param array|object|string $class An array of objects, namespaces, object or namespace
|
||||
* @param string $property Name of the property
|
||||
* @param int $filter (optional) Filter of properties. Uses ReflectionProperty class constants.
|
||||
* By default all properties are allowed / processed.
|
||||
*
|
||||
* @return null|ReflectionProperty
|
||||
*/
|
||||
public static function getProperty($class, $property, $filter = null)
|
||||
@@ -567,13 +587,15 @@ class Reflection
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given class / object uses / implements given trait
|
||||
* Returns information if given class / object uses / implements given trait.
|
||||
*
|
||||
* @param array|object|string $class An array of objects, namespaces, object or namespace
|
||||
* @param array|string $trait An array of strings or string
|
||||
* @param bool $verifyParents If is set to true, parent classes are verified if they use given
|
||||
* trait. Otherwise - not.
|
||||
*
|
||||
* @return bool|null
|
||||
*
|
||||
* @throws CannotResolveClassNameException
|
||||
*/
|
||||
public static function usesTrait($class, $trait, $verifyParents = false)
|
||||
@@ -616,6 +638,7 @@ class Reflection
|
||||
* If given class does not extend another, returns null.
|
||||
*
|
||||
* @param array|object|string $class An array of objects, namespaces, object or namespace
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public static function getParentClassName($class)
|
||||
|
||||
@@ -12,7 +12,7 @@ use Meritoo\Common\Exception\Regex\IncorrectColorHexLengthException;
|
||||
use Meritoo\Common\Exception\Regex\InvalidColorHexValueException;
|
||||
|
||||
/**
|
||||
* Useful regular expressions methods
|
||||
* Useful regular expressions methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -20,29 +20,30 @@ use Meritoo\Common\Exception\Regex\InvalidColorHexValueException;
|
||||
class Regex
|
||||
{
|
||||
/**
|
||||
* Patterns used to validate / verify values
|
||||
* Patterns used to validate / verify values.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
private static $patterns = [
|
||||
'email' => '/[\w-]{2,}@[\w-]+\.[\w]{2,}+/',
|
||||
'phone' => '/^\+?[0-9 ]+$/',
|
||||
'camelCasePart' => '/([a-z]|[A-Z]){1}[a-z]*/',
|
||||
'urlProtocol' => '/^([a-z]+:\/\/)',
|
||||
'urlDomain' => '([\da-z\.-]+)\.([a-z\.]{2,6})(\/)?([\w\.\-]*)?(\?)?([\w \.\-\/=&]*)\/?$/i',
|
||||
'letterOrDigit' => '/[a-zA-Z0-9]+/',
|
||||
'htmlEntity' => '/&[a-z0-9]+;/',
|
||||
'fileName' => '/.+\.\w+$/',
|
||||
'isQuoted' => '/^[\'"]{1}.+[\'"]{1}$/',
|
||||
'email' => '/[\w-]{2,}@[\w-]+\.[\w]{2,}+/',
|
||||
'phone' => '/^\+?[0-9 ]+$/',
|
||||
'camelCasePart' => '/([a-z]|[A-Z]){1}[a-z]*/',
|
||||
'urlProtocol' => '/^([a-z]+:\/\/)',
|
||||
'urlDomain' => '([\da-z\.-]+)\.([a-z\.]{2,6})(\/)?([\w\.\-]*)?(\?)?([\w \.\-\/=&]*)\/?$/i',
|
||||
'letterOrDigit' => '/[a-zA-Z0-9]+/',
|
||||
'htmlEntity' => '/&[a-z0-9]+;/',
|
||||
'fileName' => '/.+\.\w+$/',
|
||||
'isQuoted' => '/^[\'"]{1}.+[\'"]{1}$/',
|
||||
'windowsBasedPath' => '/^[A-Z]{1}:\\\.*$/',
|
||||
'money' => '/^[-+]?\d+([\.,]{1}\d*)?$/',
|
||||
'color' => '/^[a-f0-9]{6}$/i',
|
||||
'money' => '/^[-+]?\d+([\.,]{1}\d*)?$/',
|
||||
'color' => '/^[a-f0-9]{6}$/i',
|
||||
];
|
||||
|
||||
/**
|
||||
* Returns information if given e-mail address is valid
|
||||
* Returns information if given e-mail address is valid.
|
||||
*
|
||||
* @param string $email E-mail address to validate / verify
|
||||
*
|
||||
* @return bool
|
||||
*
|
||||
* Examples:
|
||||
@@ -58,13 +59,14 @@ class Regex
|
||||
{
|
||||
$pattern = self::getEmailPattern();
|
||||
|
||||
return (bool)preg_match($pattern, $email);
|
||||
return (bool) preg_match($pattern, $email);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given tax ID (in polish: NIP) is valid
|
||||
* Returns information if given tax ID (in polish: NIP) is valid.
|
||||
*
|
||||
* @param string $taxidString Tax ID (NIP) string
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isValidTaxid($taxidString)
|
||||
@@ -99,40 +101,43 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given url address is valid
|
||||
* Returns information if given url address is valid.
|
||||
*
|
||||
* @param string $url The url to validate / verify
|
||||
* @param bool $requireProtocol (optional) If is set to true, the protocol is required to be passed in the url.
|
||||
* Otherwise - not.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isValidUrl($url, $requireProtocol = false)
|
||||
{
|
||||
$pattern = self::getUrlPattern($requireProtocol);
|
||||
|
||||
return (bool)preg_match($pattern, $url);
|
||||
return (bool) preg_match($pattern, $url);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given phone number is valid
|
||||
* Returns information if given phone number is valid.
|
||||
*
|
||||
* @param string $phoneNumber The phone number to validate / verify
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isValidPhoneNumber($phoneNumber)
|
||||
{
|
||||
$pattern = self::getPhoneNumberPattern();
|
||||
|
||||
return (bool)preg_match($pattern, $phoneNumber);
|
||||
return (bool) preg_match($pattern, $phoneNumber);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns array values that matches given pattern (or values that keys matches)
|
||||
* Returns array values that matches given pattern (or values that keys matches).
|
||||
*
|
||||
* @param string $pattern Pattern to match
|
||||
* @param array $dataArray The array
|
||||
* @param bool $itsKeyPattern (optional) If is set to true, keys are checks if they match pattern. Otherwise -
|
||||
* values are checks.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function getArrayValuesByPattern($pattern, $dataArray, $itsKeyPattern = false)
|
||||
@@ -157,7 +162,7 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Filters array by given expression and column
|
||||
* Filters array by given expression and column.
|
||||
*
|
||||
* Expression can be simple compare expression, like ' == 2', or regular expression.
|
||||
* Returns filtered array.
|
||||
@@ -167,6 +172,7 @@ class Regex
|
||||
* @param string $filterExpression Filter expression, e.g. '== 2' or '!= \'home\''
|
||||
* @param bool $itsRegularExpression (optional) If is set to true, means that filter expression is a
|
||||
* regular expression
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function arrayFilter($array, $arrayColumnKey, $filterExpression, $itsRegularExpression = false)
|
||||
@@ -182,7 +188,7 @@ class Regex
|
||||
|
||||
if ($itsRegularExpression) {
|
||||
$matches = [];
|
||||
$pattern = '|' . $filterExpression . '|';
|
||||
$pattern = '|'.$filterExpression.'|';
|
||||
$matchesCount = preg_match($pattern, $value, $matches);
|
||||
|
||||
$remove = $matchesCount == 0;
|
||||
@@ -190,10 +196,10 @@ class Regex
|
||||
if ($value == '') {
|
||||
$value = '\'\'';
|
||||
} elseif (is_string($value)) {
|
||||
$value = '\'' . $value . '\'';
|
||||
$value = '\''.$value.'\'';
|
||||
}
|
||||
|
||||
eval('$isTrue = ' . $value . $filterExpression . ';');
|
||||
eval('$isTrue = '.$value.$filterExpression.';');
|
||||
|
||||
/* @var bool $isTrue */
|
||||
$remove = !$isTrue;
|
||||
@@ -217,6 +223,7 @@ class Regex
|
||||
* @param string $subject The string to check
|
||||
* @param bool $mustAllMatch (optional) If is set to true, $subject must match all $patterns. Otherwise -
|
||||
* not.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function pregMultiMatch($patterns, $subject, $mustAllMatch = false)
|
||||
@@ -231,13 +238,14 @@ class Regex
|
||||
|
||||
foreach ($patterns as $pattern) {
|
||||
$matches = [];
|
||||
$matched = (bool)preg_match_all($pattern, $subject, $matches);
|
||||
$matched = (bool) preg_match_all($pattern, $subject, $matches);
|
||||
|
||||
if ($mustAllMatch) {
|
||||
$effect = $effect && $matched;
|
||||
} else {
|
||||
if ($matched) {
|
||||
$effect = $matched;
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -248,11 +256,12 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns string in human readable style generated from given camel case string / text
|
||||
* Returns string in human readable style generated from given camel case string / text.
|
||||
*
|
||||
* @param string $string The string / text to convert
|
||||
* @param bool $applyUpperCaseFirst (optional) If is set to true, first word / element from the converted
|
||||
* string is uppercased. Otherwise - not.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function camelCase2humanReadable($string, $applyUpperCaseFirst = false)
|
||||
@@ -277,9 +286,10 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns parts of given camel case string / text
|
||||
* Returns parts of given camel case string / text.
|
||||
*
|
||||
* @param string $string The string / text to retrieve parts
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function getCamelCaseParts($string)
|
||||
@@ -292,11 +302,12 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns simple, lowercase string generated from given camel case string / text
|
||||
* Returns simple, lowercase string generated from given camel case string / text.
|
||||
*
|
||||
* @param string $string The string / text to convert
|
||||
* @param string $separator (optional) Separator used to concatenate parts of the string, e.g. '-' or '_'
|
||||
* @param bool $applyLowercase (optional) If is set to true, returned string will be lowercased. Otherwise - not.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function camelCase2simpleLowercase($string, $separator = '', $applyLowercase = true)
|
||||
@@ -315,7 +326,7 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify or get e-mail address
|
||||
* Returns pattern used to validate / verify or get e-mail address.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -325,7 +336,7 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify or get phone number
|
||||
* Returns pattern used to validate / verify or get phone number.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -335,7 +346,7 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify or get camel case parts of string
|
||||
* Returns pattern used to validate / verify or get camel case parts of string.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -345,10 +356,11 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify or get url address
|
||||
* Returns pattern used to validate / verify or get url address.
|
||||
*
|
||||
* @param bool $requireProtocol (optional) If is set to true, the protocol is required to be passed in the url.
|
||||
* Otherwise - not.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getUrlPattern($requireProtocol = false)
|
||||
@@ -365,10 +377,11 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given path is sub-path of another path, e.g. path file is owned by path of directory
|
||||
* Returns information if given path is sub-path of another path, e.g. path file is owned by path of directory.
|
||||
*
|
||||
* @param string $subPath Path to verify, probably sub-path
|
||||
* @param string $path Main / parent path
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isSubPathOf($subPath, $path)
|
||||
@@ -395,11 +408,11 @@ class Regex
|
||||
|
||||
$pattern = sprintf('/^%s.*/', $prepared);
|
||||
|
||||
return (bool)preg_match($pattern, $subPath);
|
||||
return (bool) preg_match($pattern, $subPath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify letter or digit
|
||||
* Returns pattern used to validate / verify letter or digit.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -409,62 +422,66 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given character is a letter or digit
|
||||
* Returns information if given character is a letter or digit.
|
||||
*
|
||||
* @param string $char Character to check
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isLetterOrDigit($char)
|
||||
{
|
||||
$pattern = self::getLetterOrDigitPattern();
|
||||
|
||||
return is_scalar($char) && (bool)preg_match($pattern, $char);
|
||||
return is_scalar($char) && (bool) preg_match($pattern, $char);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if the string starts with given beginning / characters
|
||||
* Returns information if the string starts with given beginning / characters.
|
||||
*
|
||||
* @param string $string String to check
|
||||
* @param string $beginning The beginning of string, one or more characters
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function startsWith($string, $beginning)
|
||||
{
|
||||
if (!empty($string) && !empty($beginning)) {
|
||||
if (strlen($beginning) == 1 && !self::isLetterOrDigit($beginning)) {
|
||||
$beginning = '\\' . $beginning;
|
||||
$beginning = '\\'.$beginning;
|
||||
}
|
||||
|
||||
$pattern = sprintf('|^%s|', $beginning);
|
||||
|
||||
return (bool)preg_match($pattern, $string);
|
||||
return (bool) preg_match($pattern, $string);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if the string ends with given ending / characters
|
||||
* Returns information if the string ends with given ending / characters.
|
||||
*
|
||||
* @param string $string String to check
|
||||
* @param string $ending The ending of string, one or more characters
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function endsWith($string, $ending)
|
||||
{
|
||||
if (strlen($ending) == 1 && !self::isLetterOrDigit($ending)) {
|
||||
$ending = '\\' . $ending;
|
||||
$ending = '\\'.$ending;
|
||||
}
|
||||
|
||||
return (bool)preg_match('|' . $ending . '$|', $string);
|
||||
return (bool) preg_match('|'.$ending.'$|', $string);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if the string starts with directory's separator
|
||||
* Returns information if the string starts with directory's separator.
|
||||
*
|
||||
* @param string $string String that may contain a directory's separator at the start / beginning
|
||||
* @param string $separator (optional) The directory's separator, e.g. "/". If is empty (not provided), system's
|
||||
* separator is used.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function startsWithDirectorySeparator($string, $separator = '')
|
||||
@@ -477,11 +494,12 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if the string ends with directory's separator
|
||||
* Returns information if the string ends with directory's separator.
|
||||
*
|
||||
* @param string $text String that may contain a directory's separator at the end
|
||||
* @param string $separator (optional) The directory's separator, e.g. "/". If is empty (not provided), system's
|
||||
* separator is used.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function endsWithDirectorySeparator($text, $separator = '')
|
||||
@@ -494,19 +512,20 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if uri contains parameter
|
||||
* Returns information if uri contains parameter.
|
||||
*
|
||||
* @param string $uri Uri string (e.g. $_SERVER['REQUEST_URI'])
|
||||
* @param string $parameterName Uri parameter name
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isSetUriParameter($uri, $parameterName)
|
||||
{
|
||||
return (bool)preg_match('|[?&]{1}' . $parameterName . '=|', $uri); // e.g. ?name=phil&type=4 -> '$type='
|
||||
return (bool) preg_match('|[?&]{1}'.$parameterName.'=|', $uri); // e.g. ?name=phil&type=4 -> '$type='
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify html entity
|
||||
* Returns pattern used to validate / verify html entity.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -516,36 +535,38 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if the string contains html entities
|
||||
* Returns information if the string contains html entities.
|
||||
*
|
||||
* @param string $string String to check
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function containsEntities($string)
|
||||
{
|
||||
$pattern = self::getHtmlEntityPattern();
|
||||
|
||||
return (bool)preg_match_all($pattern, $string);
|
||||
return (bool) preg_match_all($pattern, $string);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if one string contains another string
|
||||
* Returns information if one string contains another string.
|
||||
*
|
||||
* @param string $haystack The string to search in
|
||||
* @param string $needle The string to be search for
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function contains($haystack, $needle)
|
||||
{
|
||||
if (strlen($needle) == 1 && !self::isLetterOrDigit($needle)) {
|
||||
$needle = '\\' . $needle;
|
||||
$needle = '\\'.$needle;
|
||||
}
|
||||
|
||||
return (bool)preg_match('|.*' . $needle . '.*|', $haystack);
|
||||
return (bool) preg_match('|.*'.$needle.'.*|', $haystack);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify name of file
|
||||
* Returns pattern used to validate / verify name of file.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -559,17 +580,18 @@ class Regex
|
||||
* Verifies if given name contains a dot and an extension, e.g. "My File 001.jpg".
|
||||
*
|
||||
* @param string $fileName Name of file to check. It may be path of file also.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isFileName($fileName)
|
||||
{
|
||||
$pattern = self::getFileNamePattern();
|
||||
|
||||
return (bool)preg_match($pattern, $fileName);
|
||||
return (bool) preg_match($pattern, $fileName);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify if value is quoted (by apostrophes or quotation marks)
|
||||
* Returns pattern used to validate / verify if value is quoted (by apostrophes or quotation marks).
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -579,20 +601,21 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given value is quoted (by apostrophes or quotation marks)
|
||||
* Returns information if given value is quoted (by apostrophes or quotation marks).
|
||||
*
|
||||
* @param mixed $value The value to check
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isQuoted($value)
|
||||
{
|
||||
$pattern = self::getIsQuotedPattern();
|
||||
|
||||
return is_scalar($value) && (bool)preg_match($pattern, $value);
|
||||
return is_scalar($value) && (bool) preg_match($pattern, $value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify if given path is a Windows-based path, e.g. "C:\path\to\file.jpg"
|
||||
* Returns pattern used to validate / verify if given path is a Windows-based path, e.g. "C:\path\to\file.jpg".
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -602,22 +625,24 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given path is a Windows-based path, e.g. "C:\path\to\file.jpg"
|
||||
* Returns information if given path is a Windows-based path, e.g. "C:\path\to\file.jpg".
|
||||
*
|
||||
* @param string $path The path to verify
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isWindowsBasedPath($path)
|
||||
{
|
||||
$pattern = self::getWindowsBasedPathPattern();
|
||||
|
||||
return (bool)preg_match($pattern, $path);
|
||||
return (bool) preg_match($pattern, $path);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given NIP number is valid
|
||||
* Returns information if given NIP number is valid.
|
||||
*
|
||||
* @param string $nip A given NIP number
|
||||
*
|
||||
* @return bool
|
||||
*
|
||||
* @see https://pl.wikipedia.org/wiki/NIP#Znaczenie_numeru
|
||||
@@ -659,7 +684,7 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns pattern used to validate / verify if given value is money-related value
|
||||
* Returns pattern used to validate / verify if given value is money-related value.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -669,16 +694,17 @@ class Regex
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given value is valid money-related value
|
||||
* Returns information if given value is valid money-related value.
|
||||
*
|
||||
* @param mixed $value Value to verify
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isValidMoneyValue($value)
|
||||
{
|
||||
$pattern = self::getMoneyPattern();
|
||||
|
||||
return (bool)preg_match($pattern, $value);
|
||||
return (bool) preg_match($pattern, $value);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -688,6 +714,7 @@ class Regex
|
||||
* @param string $color Color to verify
|
||||
* @param bool $throwException (optional) If is set to true, throws an exception if given color is invalid
|
||||
* (default behaviour). Otherwise - not.
|
||||
*
|
||||
* @return string|bool
|
||||
*
|
||||
* @throws IncorrectColorHexLengthException
|
||||
@@ -711,7 +738,7 @@ class Regex
|
||||
}
|
||||
|
||||
$pattern = self::$patterns['color'];
|
||||
$match = (bool)preg_match($pattern, $color);
|
||||
$match = (bool) preg_match($pattern, $color);
|
||||
|
||||
if (!$match) {
|
||||
if ($throwException) {
|
||||
|
||||
@@ -12,7 +12,7 @@ use Doctrine\ORM\EntityRepository;
|
||||
use Doctrine\ORM\QueryBuilder;
|
||||
|
||||
/**
|
||||
* Useful methods for repository
|
||||
* Useful methods for repository.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -20,7 +20,7 @@ use Doctrine\ORM\QueryBuilder;
|
||||
class Repository
|
||||
{
|
||||
/**
|
||||
* Replenishes positions of given items
|
||||
* Replenishes positions of given items.
|
||||
*
|
||||
* @param array $items The items
|
||||
* @param bool $asLast (optional) If is set to true, items are placed at the end. Otherwise - at the top.
|
||||
@@ -55,10 +55,11 @@ class Repository
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns extreme position (max or min) of given items
|
||||
* Returns extreme position (max or min) of given items.
|
||||
*
|
||||
* @param array $items The items
|
||||
* @param bool $max (optional) If is set to true, maximum value is returned. Otherwise - minimum.
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public static function getExtremePosition($items, $max = true)
|
||||
@@ -93,6 +94,7 @@ class Repository
|
||||
* @param EntityRepository $repository Repository of the entity
|
||||
* @param string $property (optional) Name of property used by the ORDER BY clause
|
||||
* @param string $direction (optional) Direction used by the ORDER BY clause ("ASC" or "DESC")
|
||||
*
|
||||
* @return QueryBuilder
|
||||
*/
|
||||
public static function getEntityOrderedQueryBuilder(
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
namespace Meritoo\Common\Utilities;
|
||||
|
||||
/**
|
||||
* Useful uri methods (only static functions)
|
||||
* Useful uri methods (only static functions).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -17,9 +17,10 @@ namespace Meritoo\Common\Utilities;
|
||||
class Uri
|
||||
{
|
||||
/**
|
||||
* Returns full uri string
|
||||
* Returns full uri string.
|
||||
*
|
||||
* @param bool $withoutHost (optional) If is set to true, means that host / server name is omitted
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getFullUri($withoutHost = false)
|
||||
@@ -30,13 +31,14 @@ class Uri
|
||||
return $effect;
|
||||
}
|
||||
|
||||
return self::getServerNameOrIp(true) . $effect;
|
||||
return self::getServerNameOrIp(true).$effect;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns server name or IP address
|
||||
* Returns server name or IP address.
|
||||
*
|
||||
* @param bool $withProtocol (optional) If is set to true, protocol name is included. Otherwise isn't.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getServerNameOrIp($withProtocol = false)
|
||||
@@ -44,14 +46,14 @@ class Uri
|
||||
$protocol = '';
|
||||
|
||||
if ($withProtocol) {
|
||||
$protocol .= self::getProtocolName() . '://';
|
||||
$protocol .= self::getProtocolName().'://';
|
||||
}
|
||||
|
||||
return $protocol . Miscellaneous::getSafelyGlobalVariable(INPUT_SERVER, 'HTTP_HOST');
|
||||
return $protocol.Miscellaneous::getSafelyGlobalVariable(INPUT_SERVER, 'HTTP_HOST');
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns protocol name
|
||||
* Returns protocol name.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -76,7 +78,7 @@ class Uri
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns http referer uri
|
||||
* Returns http referer uri.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -92,7 +94,7 @@ class Uri
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns user's IP address
|
||||
* Returns user's IP address.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -102,10 +104,11 @@ class Uri
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns name and version of user's web browser
|
||||
* Returns name and version of user's web browser.
|
||||
*
|
||||
* @param bool $withVersion (optional) If is set to true, version of the browser is returned too. Otherwise -
|
||||
* name only.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getUserWebBrowserName($withVersion = false)
|
||||
@@ -114,9 +117,9 @@ class Uri
|
||||
|
||||
$knownBrowsers = [
|
||||
'Firefox/([\d\.]+)$' => 'Mozilla Firefox',
|
||||
'OPR/([\d\.]+)$' => 'Opera',
|
||||
'Chrome/([\d\.]+)$' => 'Google Chrome',
|
||||
'Safari/([\d\.]+)$' => 'Apple Safari',
|
||||
'OPR/([\d\.]+)$' => 'Opera',
|
||||
'Chrome/([\d\.]+)$' => 'Google Chrome',
|
||||
'Safari/([\d\.]+)$' => 'Apple Safari',
|
||||
];
|
||||
|
||||
foreach ($knownBrowsers as $pattern => $browserName) {
|
||||
@@ -138,7 +141,7 @@ class Uri
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns user's web browser information
|
||||
* Returns user's web browser information.
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
@@ -164,7 +167,7 @@ class Uri
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns name of user's operating system
|
||||
* Returns name of user's operating system.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
@@ -174,8 +177,8 @@ class Uri
|
||||
|
||||
$knownSystems = [
|
||||
'Linux' => 'Linux',
|
||||
'Win' => 'Windows',
|
||||
'Mac' => 'Mac OS',
|
||||
'Win' => 'Windows',
|
||||
'Mac' => 'Mac OS',
|
||||
];
|
||||
|
||||
foreach ($knownSystems as $pattern => $systemName) {
|
||||
@@ -191,7 +194,7 @@ class Uri
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if running server is localhost
|
||||
* Returns information if running server is localhost.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
@@ -207,9 +210,10 @@ class Uri
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns information if given url is external, from another server / domain
|
||||
* Returns information if given url is external, from another server / domain.
|
||||
*
|
||||
* @param string $url The url to check
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isExternalUrl($url)
|
||||
@@ -221,11 +225,12 @@ class Uri
|
||||
}
|
||||
|
||||
/**
|
||||
* Replenishes protocol in the given url
|
||||
* Replenishes protocol in the given url.
|
||||
*
|
||||
* @param string $url The url to check and replenish
|
||||
* @param string $protocol (optional) The protocol which is replenished. If is empty, protocol of current request
|
||||
* is used.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function replenishProtocol($url, $protocol = '')
|
||||
@@ -264,11 +269,12 @@ class Uri
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns url to resource secured by given htpasswd login and password
|
||||
* Returns url to resource secured by given htpasswd login and password.
|
||||
*
|
||||
* @param string $url A path / url to some resource, e.g. page, image, css file
|
||||
* @param string $user (optional) User name used to log in
|
||||
* @param string $password (optional) User password used to log in
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function getSecuredUrl($url, $user = '', $password = '')
|
||||
@@ -280,7 +286,7 @@ class Uri
|
||||
$url = sprintf('/%s', $url);
|
||||
}
|
||||
|
||||
$url = $host . $url;
|
||||
$url = $host.$url;
|
||||
|
||||
if (!empty($user) && !empty($password)) {
|
||||
$url = sprintf('%s:%s@%s', $user, $password, $url);
|
||||
@@ -295,13 +301,14 @@ class Uri
|
||||
*
|
||||
* @param string $url Url string
|
||||
* @param string $protocol (optional) Protocol string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function addProtocolToUrl($url, $protocol = 'http')
|
||||
{
|
||||
$pattern = sprintf('/^%s.*/', $protocol);
|
||||
|
||||
if ((bool)preg_match($pattern, $url)) {
|
||||
if ((bool) preg_match($pattern, $url)) {
|
||||
return $url;
|
||||
}
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ use DOMXPath;
|
||||
use SimpleXMLElement;
|
||||
|
||||
/**
|
||||
* Useful XML-related methods (only static functions)
|
||||
* Useful XML-related methods (only static functions).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -26,6 +26,7 @@ class Xml
|
||||
*
|
||||
* @param SimpleXMLElement $element1 First element to merge
|
||||
* @param SimpleXMLElement $element2 Second element to merge
|
||||
*
|
||||
* @return SimpleXMLElement
|
||||
*/
|
||||
public static function mergeNodes(SimpleXMLElement $element1, SimpleXMLElement $element2)
|
||||
|
||||
@@ -14,7 +14,7 @@ use Meritoo\Common\Test\Base\BaseTestCase;
|
||||
use Meritoo\Common\Type\OopVisibilityType;
|
||||
|
||||
/**
|
||||
* Tests of the collection of elements
|
||||
* Tests of the collection of elements.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -22,21 +22,21 @@ use Meritoo\Common\Type\OopVisibilityType;
|
||||
class CollectionTest extends BaseTestCase
|
||||
{
|
||||
/**
|
||||
* An empty collection
|
||||
* An empty collection.
|
||||
*
|
||||
* @var Collection
|
||||
*/
|
||||
private $emptyCollection;
|
||||
|
||||
/**
|
||||
* Simple collection
|
||||
* Simple collection.
|
||||
*
|
||||
* @var Collection
|
||||
*/
|
||||
private $simpleCollection;
|
||||
|
||||
/**
|
||||
* Elements of simple collection
|
||||
* Elements of simple collection.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
|
||||
@@ -13,7 +13,7 @@ use Meritoo\Common\Type\Base\BaseType;
|
||||
use PHPUnit_Framework_TestCase;
|
||||
|
||||
/**
|
||||
* Tests of the exception used while type of something is unknown
|
||||
* Tests of the exception used while type of something is unknown.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -33,7 +33,7 @@ class UnknownTypeExceptionTest extends PHPUnit_Framework_TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Type of something (for testing purposes)
|
||||
* Type of something (for testing purposes).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -46,7 +46,7 @@ class TestType extends BaseType
|
||||
}
|
||||
|
||||
/**
|
||||
* An exception used while type of something is unknown (for testing purposes)
|
||||
* An exception used while type of something is unknown (for testing purposes).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -54,7 +54,7 @@ class TestType extends BaseType
|
||||
class UnknownTestTypeException extends UnknownTypeException
|
||||
{
|
||||
/**
|
||||
* Class constructor
|
||||
* Class constructor.
|
||||
*
|
||||
* @param int|string $unknownType The unknown type of something (for testing purposes)
|
||||
*/
|
||||
@@ -65,7 +65,7 @@ class UnknownTestTypeException extends UnknownTypeException
|
||||
}
|
||||
|
||||
/**
|
||||
* Service used together with type of something (for testing purposes)
|
||||
* Service used together with type of something (for testing purposes).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -73,9 +73,10 @@ class UnknownTestTypeException extends UnknownTypeException
|
||||
class TestService
|
||||
{
|
||||
/**
|
||||
* Returns translated type (for testing purposes)
|
||||
* Returns translated type (for testing purposes).
|
||||
*
|
||||
* @param string $type Type of something (for testing purposes)
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* @throws UnknownTestTypeException
|
||||
|
||||
@@ -13,7 +13,7 @@ use Meritoo\Common\Type\Base\BaseType;
|
||||
use PHPUnit_Framework_TestCase;
|
||||
|
||||
/**
|
||||
* Tests of the base / abstract type of something
|
||||
* Tests of the base / abstract type of something.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -45,7 +45,7 @@ class BaseTypeTest extends PHPUnit_Framework_TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides type of something for testing the getAll() method
|
||||
* Provides type of something for testing the getAll() method.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -66,7 +66,7 @@ class BaseTypeTest extends PHPUnit_Framework_TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides type of something for testing the isCorrectType() method
|
||||
* Provides type of something for testing the isCorrectType() method.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -177,7 +177,7 @@ class BaseTypeTest extends PHPUnit_Framework_TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Empty type of something used for testing
|
||||
* Empty type of something used for testing.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -187,7 +187,7 @@ class TestEmptyType extends BaseType
|
||||
}
|
||||
|
||||
/**
|
||||
* Type of something used for testing
|
||||
* Type of something used for testing.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
|
||||
@@ -12,7 +12,7 @@ use Meritoo\Common\Test\Base\BaseTypeTestCase;
|
||||
use Meritoo\Common\Type\DatePartType;
|
||||
|
||||
/**
|
||||
* Tests of the type of date part, e.g. "year"
|
||||
* Tests of the type of date part, e.g. "year".
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -25,12 +25,12 @@ class DatePartTypeTest extends BaseTypeTestCase
|
||||
protected function getAllExpectedTypes()
|
||||
{
|
||||
return [
|
||||
'DAY' => DatePartType::DAY,
|
||||
'HOUR' => DatePartType::HOUR,
|
||||
'DAY' => DatePartType::DAY,
|
||||
'HOUR' => DatePartType::HOUR,
|
||||
'MINUTE' => DatePartType::MINUTE,
|
||||
'MONTH' => DatePartType::MONTH,
|
||||
'MONTH' => DatePartType::MONTH,
|
||||
'SECOND' => DatePartType::SECOND,
|
||||
'YEAR' => DatePartType::YEAR,
|
||||
'YEAR' => DatePartType::YEAR,
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ use Meritoo\Common\Utilities\Arrays;
|
||||
use PHPUnit_Framework_TestCase;
|
||||
|
||||
/**
|
||||
* Tests of the useful arrays methods
|
||||
* Tests of the useful arrays methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -67,8 +67,8 @@ class ArraysTest extends PHPUnit_Framework_TestCase
|
||||
self::assertEquals('', Arrays::values2csv($this->simpleArray));
|
||||
|
||||
self::assertEquals("lorem,ipsum,dolor,sit,amet\n"
|
||||
. "consectetur,adipiscing,elit\n"
|
||||
. 'donec,sagittis,fringilla,eleifend', Arrays::values2csv($this->twoDimensionsArray));
|
||||
."consectetur,adipiscing,elit\n"
|
||||
.'donec,sagittis,fringilla,eleifend', Arrays::values2csv($this->twoDimensionsArray));
|
||||
}
|
||||
|
||||
public function testGetFirstKey()
|
||||
@@ -175,7 +175,7 @@ class ArraysTest extends PHPUnit_Framework_TestCase
|
||||
{
|
||||
$effect = [
|
||||
'nullam' => 'donec',
|
||||
'x' => [
|
||||
'x' => [
|
||||
'vitae' => [
|
||||
'x' => 'quis',
|
||||
],
|
||||
@@ -188,7 +188,7 @@ class ArraysTest extends PHPUnit_Framework_TestCase
|
||||
|
||||
self::assertEquals([
|
||||
'x' => 'sit',
|
||||
4 => 'amet',
|
||||
4 => 'amet',
|
||||
], Arrays::replaceArrayKeys($this->simpleArray, '|[0-3]+|', 'x'));
|
||||
}
|
||||
|
||||
@@ -370,19 +370,19 @@ letsTest[2] = value_2;';
|
||||
'lorem' => 0,
|
||||
'ipsum' => 1,
|
||||
'dolor' => 2,
|
||||
'sit' => 3,
|
||||
'amet' => 4,
|
||||
'sit' => 3,
|
||||
'amet' => 4,
|
||||
],
|
||||
[
|
||||
'consectetur' => 0,
|
||||
'adipiscing' => 1,
|
||||
'elit' => 2,
|
||||
'adipiscing' => 1,
|
||||
'elit' => 2,
|
||||
],
|
||||
[
|
||||
'donec' => 0,
|
||||
'sagittis' => 1,
|
||||
'donec' => 0,
|
||||
'sagittis' => 1,
|
||||
'fringilla' => 2,
|
||||
'eleifend' => 3,
|
||||
'eleifend' => 3,
|
||||
],
|
||||
];
|
||||
|
||||
@@ -428,16 +428,16 @@ letsTest[2] = value_2;';
|
||||
*/
|
||||
$array = [
|
||||
'light' => '#fff',
|
||||
'dark' => '#000',
|
||||
'dark' => '#000',
|
||||
];
|
||||
|
||||
self::assertEquals($array, Arrays::string2array('light:#fff|dark:#000'));
|
||||
self::assertEquals($array, Arrays::string2array('light: #fff | dark: #000'));
|
||||
|
||||
$array = [
|
||||
'red' => '#f00',
|
||||
'red' => '#f00',
|
||||
'green' => '#0f0',
|
||||
'blue' => '#00f',
|
||||
'blue' => '#00f',
|
||||
];
|
||||
|
||||
self::assertEquals($array, Arrays::string2array('red:#f00|green:#0f0|blue:#00f'));
|
||||
@@ -489,12 +489,12 @@ letsTest[2] = value_2;';
|
||||
|
||||
$keys16 = [
|
||||
'a' => 'lorem',
|
||||
11 => 'amet',
|
||||
11 => 'amet',
|
||||
];
|
||||
|
||||
$keys17 = [
|
||||
'a' => 'lorem',
|
||||
11 => 'amet',
|
||||
11 => 'amet',
|
||||
'c' => 'sit__',
|
||||
];
|
||||
|
||||
@@ -518,16 +518,16 @@ letsTest[2] = value_2;';
|
||||
* Using default separator and other default arguments
|
||||
*/
|
||||
$expected = [
|
||||
'lorem.ipsum.dolor' => 'sit',
|
||||
'lorem.ipsum.diam.non' => 'egestas',
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit.nullam' => 'donec',
|
||||
'lorem.ipsum.dolor' => 'sit',
|
||||
'lorem.ipsum.diam.non' => 'egestas',
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit.nullam' => 'donec',
|
||||
'sit.aliquet.vitae.ligula' => 'quis',
|
||||
'sit.0' => 'elit',
|
||||
'amet.0' => 'iaculis',
|
||||
'amet.1' => 'primis',
|
||||
'sit.0' => 'elit',
|
||||
'amet.0' => 'iaculis',
|
||||
'amet.1' => 'primis',
|
||||
];
|
||||
|
||||
self::assertEquals($expected, Arrays::getLastElementsPaths($this->complexArray));
|
||||
@@ -537,16 +537,16 @@ letsTest[2] = value_2;';
|
||||
*/
|
||||
$separator = ' -> ';
|
||||
$expected = [
|
||||
sprintf('lorem%sipsum%sdolor', $separator, $separator) => 'sit',
|
||||
sprintf('lorem%sipsum%sdiam%snon', $separator, $separator, $separator) => 'egestas',
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
sprintf('sit%snullam', $separator) => 'donec',
|
||||
sprintf('lorem%sipsum%sdolor', $separator, $separator) => 'sit',
|
||||
sprintf('lorem%sipsum%sdiam%snon', $separator, $separator, $separator) => 'egestas',
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
sprintf('sit%snullam', $separator) => 'donec',
|
||||
sprintf('sit%saliquet%svitae%sligula', $separator, $separator, $separator) => 'quis',
|
||||
sprintf('sit%s0', $separator) => 'elit',
|
||||
sprintf('amet%s0', $separator) => 'iaculis',
|
||||
sprintf('amet%s1', $separator) => 'primis',
|
||||
sprintf('sit%s0', $separator) => 'elit',
|
||||
sprintf('amet%s0', $separator) => 'iaculis',
|
||||
sprintf('amet%s1', $separator) => 'primis',
|
||||
];
|
||||
|
||||
self::assertEquals($expected, Arrays::getLastElementsPaths($this->complexArray, $separator));
|
||||
@@ -555,16 +555,16 @@ letsTest[2] = value_2;';
|
||||
* Special exception: do not use, stop recursive on the "diam" key
|
||||
*/
|
||||
$expected = [
|
||||
'lorem.ipsum.dolor' => 'sit',
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit.nullam' => 'donec',
|
||||
'lorem.ipsum.dolor' => 'sit',
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit.nullam' => 'donec',
|
||||
'sit.aliquet.vitae.ligula' => 'quis',
|
||||
'sit.0' => 'elit',
|
||||
'amet.0' => 'iaculis',
|
||||
'amet.1' => 'primis',
|
||||
'lorem.ipsum.diam' => [
|
||||
'sit.0' => 'elit',
|
||||
'amet.0' => 'iaculis',
|
||||
'amet.1' => 'primis',
|
||||
'lorem.ipsum.diam' => [
|
||||
'non' => 'egestas',
|
||||
],
|
||||
];
|
||||
@@ -579,17 +579,17 @@ letsTest[2] = value_2;';
|
||||
*/
|
||||
$expected = [
|
||||
'lorem . ipsum . dolor' => 'sit',
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit . nullam' => 'donec',
|
||||
'sit . 0' => 'elit',
|
||||
'amet . 0' => 'iaculis',
|
||||
'amet . 1' => 'primis',
|
||||
'lorem . ipsum . diam' => [
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit . nullam' => 'donec',
|
||||
'sit . 0' => 'elit',
|
||||
'amet . 0' => 'iaculis',
|
||||
'amet . 1' => 'primis',
|
||||
'lorem . ipsum . diam' => [
|
||||
'non' => 'egestas',
|
||||
],
|
||||
'sit . aliquet' => [
|
||||
'sit . aliquet' => [
|
||||
'vitae' => [
|
||||
'ligula' => 'quis',
|
||||
],
|
||||
@@ -623,12 +623,12 @@ letsTest[2] = value_2;';
|
||||
2,
|
||||
3,
|
||||
],
|
||||
'primis > 0' => [
|
||||
'primis > 0' => [
|
||||
'in',
|
||||
'faucibus',
|
||||
'orci',
|
||||
],
|
||||
'primis > 1' => [
|
||||
'primis > 1' => [
|
||||
'luctus',
|
||||
'et',
|
||||
'ultrices',
|
||||
@@ -653,14 +653,14 @@ letsTest[2] = value_2;';
|
||||
*/
|
||||
$expected = [
|
||||
'lorem > ipsum > dolor' => 'sit',
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit > nullam' => 'donec',
|
||||
'sit > 0' => 'elit',
|
||||
'amet > 0' => 'iaculis',
|
||||
'amet > 1' => 'primis',
|
||||
'lorem > ipsum > diam' => [
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit > nullam' => 'donec',
|
||||
'sit > 0' => 'elit',
|
||||
'amet > 0' => 'iaculis',
|
||||
'amet > 1' => 'primis',
|
||||
'lorem > ipsum > diam' => [
|
||||
'non' => 'egestas',
|
||||
],
|
||||
'sit > aliquet > vitae' => [
|
||||
@@ -679,7 +679,7 @@ letsTest[2] = value_2;';
|
||||
* Stop building of paths on these paths (verify paths only)
|
||||
*/
|
||||
$expected = [
|
||||
'ipsum > quis > vestibulum > porta-1' => [
|
||||
'ipsum > quis > vestibulum > porta-1' => [
|
||||
'turpis',
|
||||
'urna',
|
||||
],
|
||||
@@ -691,13 +691,13 @@ letsTest[2] = value_2;';
|
||||
],
|
||||
],
|
||||
],
|
||||
'ipsum > quis > vestibulum > porta-3 > 0' => 1,
|
||||
'ipsum > quis > vestibulum > porta-3 > 1' => 2,
|
||||
'ipsum > quis > vestibulum > porta-3 > 2' => 3,
|
||||
'primis > 0 > 0' => 'in',
|
||||
'primis > 0 > 1' => 'faucibus',
|
||||
'primis > 0 > 2' => 'orci',
|
||||
'primis > 1' => [
|
||||
'ipsum > quis > vestibulum > porta-3 > 0' => 1,
|
||||
'ipsum > quis > vestibulum > porta-3 > 1' => 2,
|
||||
'ipsum > quis > vestibulum > porta-3 > 2' => 3,
|
||||
'primis > 0 > 0' => 'in',
|
||||
'primis > 0 > 1' => 'faucibus',
|
||||
'primis > 0 > 2' => 'orci',
|
||||
'primis > 1' => [
|
||||
'luctus',
|
||||
'et',
|
||||
'ultrices',
|
||||
@@ -716,7 +716,7 @@ letsTest[2] = value_2;';
|
||||
* Stop building of paths if path contains any of these part (verify part of paths only)
|
||||
*/
|
||||
$expected = [
|
||||
'ipsum > quis > vestibulum > porta-1' => [
|
||||
'ipsum > quis > vestibulum > porta-1' => [
|
||||
'turpis',
|
||||
'urna',
|
||||
],
|
||||
@@ -726,15 +726,15 @@ letsTest[2] = value_2;';
|
||||
'aliquam',
|
||||
],
|
||||
],
|
||||
'ipsum > quis > vestibulum > porta-3 > 0' => 1,
|
||||
'ipsum > quis > vestibulum > porta-3 > 1' => 2,
|
||||
'ipsum > quis > vestibulum > porta-3 > 2' => 3,
|
||||
'primis > 0' => [
|
||||
'ipsum > quis > vestibulum > porta-3 > 0' => 1,
|
||||
'ipsum > quis > vestibulum > porta-3 > 1' => 2,
|
||||
'ipsum > quis > vestibulum > porta-3 > 2' => 3,
|
||||
'primis > 0' => [
|
||||
'in',
|
||||
'faucibus',
|
||||
'orci',
|
||||
],
|
||||
'primis > 1' => [
|
||||
'primis > 1' => [
|
||||
'luctus',
|
||||
'et',
|
||||
'ultrices',
|
||||
@@ -830,7 +830,7 @@ letsTest[2] = value_2;';
|
||||
];
|
||||
|
||||
$existingKeys = [
|
||||
'simpleArray' => [
|
||||
'simpleArray' => [
|
||||
1,
|
||||
3,
|
||||
4,
|
||||
@@ -839,11 +839,11 @@ letsTest[2] = value_2;';
|
||||
'dolor',
|
||||
'amet',
|
||||
],
|
||||
'twoDimensionsArray' => [
|
||||
'twoDimensionsArray' => [
|
||||
2,
|
||||
3,
|
||||
],
|
||||
'complexArray' => [
|
||||
'complexArray' => [
|
||||
'sit',
|
||||
'aliquet',
|
||||
'vitae',
|
||||
@@ -883,7 +883,7 @@ letsTest[2] = value_2;';
|
||||
2,
|
||||
2,
|
||||
],
|
||||
'complexArray' => [
|
||||
'complexArray' => [
|
||||
[
|
||||
'lorem',
|
||||
'ipsum',
|
||||
@@ -989,22 +989,22 @@ letsTest[2] = value_2;';
|
||||
* Positive case - multi-dimensions array
|
||||
*/
|
||||
$effect = [
|
||||
'amet' => [
|
||||
'amet' => [
|
||||
'iaculis',
|
||||
'primis',
|
||||
],
|
||||
'consectetur' => 'adipiscing',
|
||||
'lorem' => [
|
||||
'lorem' => [
|
||||
'ipsum' => [
|
||||
'dolor' => 'sit',
|
||||
'diam' => [
|
||||
'diam' => [
|
||||
'non' => 'egestas',
|
||||
],
|
||||
],
|
||||
],
|
||||
'mollis' => 1234,
|
||||
'sit' => [
|
||||
'nullam' => 'donec',
|
||||
'mollis' => 1234,
|
||||
'sit' => [
|
||||
'nullam' => 'donec',
|
||||
'aliquet' => [
|
||||
'vitae' => [
|
||||
'ligula' => 'quis',
|
||||
@@ -1012,7 +1012,7 @@ letsTest[2] = value_2;';
|
||||
],
|
||||
'elit',
|
||||
],
|
||||
2 => [],
|
||||
2 => [],
|
||||
];
|
||||
|
||||
self::assertEquals($effect, Arrays::ksortRecursive($this->complexArray));
|
||||
@@ -1021,23 +1021,23 @@ letsTest[2] = value_2;';
|
||||
* Positive case - multi-dimensions array - with options of ksort() function
|
||||
*/
|
||||
$effect = [
|
||||
2 => [],
|
||||
'amet' => [
|
||||
2 => [],
|
||||
'amet' => [
|
||||
'iaculis',
|
||||
'primis',
|
||||
],
|
||||
'consectetur' => 'adipiscing',
|
||||
'lorem' => [
|
||||
'lorem' => [
|
||||
'ipsum' => [
|
||||
'dolor' => 'sit',
|
||||
'diam' => [
|
||||
'diam' => [
|
||||
'non' => 'egestas',
|
||||
],
|
||||
],
|
||||
],
|
||||
'mollis' => 1234,
|
||||
'sit' => [
|
||||
'nullam' => 'donec',
|
||||
'mollis' => 1234,
|
||||
'sit' => [
|
||||
'nullam' => 'donec',
|
||||
'aliquet' => [
|
||||
'vitae' => [
|
||||
'ligula' => 'quis',
|
||||
@@ -1086,7 +1086,7 @@ letsTest[2] = value_2;';
|
||||
'dolor',
|
||||
'sit',
|
||||
],
|
||||
'amet' => [
|
||||
'amet' => [
|
||||
'consectetur',
|
||||
'adipiscing' => [
|
||||
'elit' => [
|
||||
@@ -1105,10 +1105,10 @@ letsTest[2] = value_2;';
|
||||
'sit',
|
||||
Arrays::POSITION_KEY_NAME => 1,
|
||||
],
|
||||
'amet' => [
|
||||
'amet' => [
|
||||
'consectetur',
|
||||
'adipiscing' => [
|
||||
'elit' => [
|
||||
'adipiscing' => [
|
||||
'elit' => [
|
||||
'cras',
|
||||
'quis',
|
||||
'ligula',
|
||||
@@ -1233,7 +1233,7 @@ letsTest[2] = value_2;';
|
||||
|
||||
$sorted = [
|
||||
'dolor' => 'sit',
|
||||
'amet' => 'consectetur',
|
||||
'amet' => 'consectetur',
|
||||
'Lorem' => 'ipsum',
|
||||
];
|
||||
|
||||
@@ -1306,9 +1306,9 @@ letsTest[2] = value_2;';
|
||||
* An array with elements that contain separator
|
||||
*/
|
||||
$array = [
|
||||
'lorem' . $separator,
|
||||
'lorem'.$separator,
|
||||
'ipsum',
|
||||
$separator . 'dolor',
|
||||
$separator.'dolor',
|
||||
];
|
||||
|
||||
self::assertEquals(implode($separator, [
|
||||
@@ -1658,7 +1658,7 @@ letsTest[2] = value_2;';
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides simple array to set/replace values with keys
|
||||
* Provides simple array to set/replace values with keys.
|
||||
*
|
||||
* @return \Generator
|
||||
*/
|
||||
@@ -1691,14 +1691,14 @@ letsTest[2] = value_2;';
|
||||
'Lorem' => 0,
|
||||
'ipsum' => 1,
|
||||
'dolor' => 2,
|
||||
'sit' => 3,
|
||||
'amet' => 4,
|
||||
'sit' => 3,
|
||||
'amet' => 4,
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides an array with duplicated values to set/replace values with keys
|
||||
* Provides an array with duplicated values to set/replace values with keys.
|
||||
*
|
||||
* @return \Generator
|
||||
*/
|
||||
@@ -1708,18 +1708,18 @@ letsTest[2] = value_2;';
|
||||
[
|
||||
'lorem' => 'ipsum',
|
||||
'dolor' => 'ipsum',
|
||||
'sit' => 'amet',
|
||||
'diam' => 'non',
|
||||
'elit' => 'non',
|
||||
'in' => 'non',
|
||||
'sit' => 'amet',
|
||||
'diam' => 'non',
|
||||
'elit' => 'non',
|
||||
'in' => 'non',
|
||||
],
|
||||
[
|
||||
'ipsum' => [
|
||||
'lorem',
|
||||
'dolor',
|
||||
],
|
||||
'amet' => 'sit',
|
||||
'non' => [
|
||||
'amet' => 'sit',
|
||||
'non' => [
|
||||
'diam',
|
||||
'elit',
|
||||
'in',
|
||||
@@ -1729,14 +1729,14 @@ letsTest[2] = value_2;';
|
||||
|
||||
yield[
|
||||
[
|
||||
'lorem' => [
|
||||
'lorem' => [
|
||||
'diam' => 'non',
|
||||
'elit' => 'non',
|
||||
'in' => 'non',
|
||||
'in' => 'non',
|
||||
],
|
||||
'dolor1' => 'ipsum',
|
||||
'dolor2' => 'ipsum',
|
||||
'sit' => 'amet',
|
||||
'sit' => 'amet',
|
||||
],
|
||||
[
|
||||
'lorem' => [
|
||||
@@ -1750,7 +1750,7 @@ letsTest[2] = value_2;';
|
||||
'dolor1',
|
||||
'dolor2',
|
||||
],
|
||||
'amet' => 'sit',
|
||||
'amet' => 'sit',
|
||||
],
|
||||
];
|
||||
}
|
||||
@@ -1773,7 +1773,7 @@ letsTest[2] = value_2;';
|
||||
$this->simpleArrayWithKeys = [
|
||||
'Lorem' => 'ipsum',
|
||||
'dolor' => 'sit',
|
||||
'amet' => 'consectetur',
|
||||
'amet' => 'consectetur',
|
||||
];
|
||||
|
||||
$this->twoDimensionsArray = [
|
||||
@@ -1798,19 +1798,19 @@ letsTest[2] = value_2;';
|
||||
];
|
||||
|
||||
$this->complexArray = [
|
||||
'lorem' => [
|
||||
'lorem' => [
|
||||
'ipsum' => [
|
||||
'dolor' => 'sit',
|
||||
'diam' => [
|
||||
'diam' => [
|
||||
'non' => 'egestas',
|
||||
],
|
||||
],
|
||||
],
|
||||
'consectetur' => 'adipiscing',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit' => [
|
||||
'nullam' => 'donec',
|
||||
'mollis' => 1234,
|
||||
2 => [],
|
||||
'sit' => [
|
||||
'nullam' => 'donec',
|
||||
'aliquet' => [
|
||||
'vitae' => [
|
||||
'ligula' => 'quis',
|
||||
@@ -1818,14 +1818,14 @@ letsTest[2] = value_2;';
|
||||
],
|
||||
'elit',
|
||||
],
|
||||
'amet' => [
|
||||
'amet' => [
|
||||
'iaculis',
|
||||
'primis',
|
||||
],
|
||||
];
|
||||
|
||||
$this->superComplexArray = [
|
||||
'ipsum' => [
|
||||
'ipsum' => [
|
||||
'quis' => [
|
||||
'vestibulum' => [
|
||||
'porta-1' => [
|
||||
|
||||
@@ -12,7 +12,7 @@ use Meritoo\Common\Utilities\Bundle;
|
||||
use PHPUnit_Framework_TestCase;
|
||||
|
||||
/**
|
||||
* Tests of the useful methods for bundle
|
||||
* Tests of the useful methods for bundle.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
|
||||
@@ -13,7 +13,7 @@ use Meritoo\Common\Test\Base\BaseTestCase;
|
||||
use Meritoo\Common\Utilities\Composer;
|
||||
|
||||
/**
|
||||
* Tests of the useful Composer-related methods
|
||||
* Tests of the useful Composer-related methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -21,7 +21,7 @@ use Meritoo\Common\Utilities\Composer;
|
||||
class ComposerTest extends BaseTestCase
|
||||
{
|
||||
/**
|
||||
* Path of existing composer.json used as source of data for tests
|
||||
* Path of existing composer.json used as source of data for tests.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
@@ -59,7 +59,7 @@ class ComposerTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides names and values of existing nodes
|
||||
* Provides names and values of existing nodes.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
|
||||
@@ -15,7 +15,7 @@ use Meritoo\Common\Type\OopVisibilityType;
|
||||
use Meritoo\Common\Utilities\DatePeriod;
|
||||
|
||||
/**
|
||||
* Tests of date's period
|
||||
* Tests of date's period.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -110,7 +110,7 @@ class DatePeriodTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides the start and end date of date period
|
||||
* Provides the start and end date of date period.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -143,7 +143,7 @@ class DatePeriodTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides incorrect period
|
||||
* Provides incorrect period.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -155,7 +155,7 @@ class DatePeriodTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides period to verify
|
||||
* Provides period to verify.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -173,7 +173,7 @@ class DatePeriodTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides period and incorrect format of date to verify
|
||||
* Provides period and incorrect format of date to verify.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -199,7 +199,7 @@ class DatePeriodTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides period and format of date to verify
|
||||
* Provides period and format of date to verify.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
|
||||
@@ -16,7 +16,7 @@ use Meritoo\Common\Test\Base\BaseTestCase;
|
||||
use Meritoo\Common\Utilities\Date;
|
||||
|
||||
/**
|
||||
* Tests of the Date methods (only static functions)
|
||||
* Tests of the Date methods (only static functions).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -189,7 +189,7 @@ class DateTest extends BaseTestCase
|
||||
|
||||
public function testGetCurrentDayOfWeek()
|
||||
{
|
||||
self::assertRegExp('/^[0-6]{1}$/', (string)Date::getCurrentDayOfWeek());
|
||||
self::assertRegExp('/^[0-6]{1}$/', (string) Date::getCurrentDayOfWeek());
|
||||
}
|
||||
|
||||
public function testGetCurrentDayOfWeekName()
|
||||
@@ -231,7 +231,7 @@ class DateTest extends BaseTestCase
|
||||
*/
|
||||
public function testGetDayOfWeek($year, $month, $day)
|
||||
{
|
||||
self::assertRegExp('/^[0-6]{1}$/', (string)Date::getDayOfWeek($year, $month, $day));
|
||||
self::assertRegExp('/^[0-6]{1}$/', (string) Date::getDayOfWeek($year, $month, $day));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -260,10 +260,10 @@ class DateTest extends BaseTestCase
|
||||
$dateEnd = '2017-01-02';
|
||||
|
||||
$effect = [
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 1,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 1,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MINUTES => 0,
|
||||
];
|
||||
|
||||
@@ -280,10 +280,10 @@ class DateTest extends BaseTestCase
|
||||
* Difference of 1 day (using the relative date format)
|
||||
*/
|
||||
$effect = [
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 1,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 1,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MINUTES => 0,
|
||||
];
|
||||
|
||||
@@ -301,10 +301,10 @@ class DateTest extends BaseTestCase
|
||||
$dateEnd = '2017-01-02 14:15';
|
||||
|
||||
$effect = [
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 1,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 2,
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 1,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 2,
|
||||
Date::DATE_DIFFERENCE_UNIT_MINUTES => 15,
|
||||
];
|
||||
|
||||
@@ -330,10 +330,10 @@ class DateTest extends BaseTestCase
|
||||
$dateEnd = '2017-02-11 16:30';
|
||||
|
||||
$effect = [
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 1,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 41,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 4,
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 1,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 41,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 4,
|
||||
Date::DATE_DIFFERENCE_UNIT_MINUTES => 30,
|
||||
];
|
||||
|
||||
@@ -362,10 +362,10 @@ class DateTest extends BaseTestCase
|
||||
$dateEnd = $dateStart;
|
||||
|
||||
$effect = [
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_YEARS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MONTHS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_DAYS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_HOURS => 0,
|
||||
Date::DATE_DIFFERENCE_UNIT_MINUTES => 0,
|
||||
];
|
||||
|
||||
@@ -502,7 +502,7 @@ class DateTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides incorrect invalidCount of DateTime
|
||||
* Provides incorrect invalidCount of DateTime.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -552,7 +552,7 @@ class DateTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides invalid format of date
|
||||
* Provides invalid format of date.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -570,7 +570,7 @@ class DateTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provide empty dates for date difference
|
||||
* Provide empty dates for date difference.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -598,7 +598,7 @@ class DateTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides incorrect values of year, month and day
|
||||
* Provides incorrect values of year, month and day.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -648,7 +648,7 @@ class DateTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides values of year, month and day
|
||||
* Provides values of year, month and day.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -698,7 +698,7 @@ class DateTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides data for the random date with incorrect end of random partition
|
||||
* Provides data for the random date with incorrect end of random partition.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -712,7 +712,7 @@ class DateTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides data for the random date
|
||||
* Provides data for the random date.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
|
||||
@@ -12,7 +12,7 @@ use Meritoo\Common\Test\Base\BaseTestCase;
|
||||
use Meritoo\Common\Utilities\GeneratorUtility;
|
||||
|
||||
/**
|
||||
* Tests of the useful methods for the Generator class
|
||||
* Tests of the useful methods for the Generator class.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
|
||||
@@ -13,7 +13,7 @@ use Meritoo\Common\Test\Base\BaseTestCase;
|
||||
use Meritoo\Common\Utilities\Locale;
|
||||
|
||||
/**
|
||||
* Tests of the useful locale methods
|
||||
* Tests of the useful locale methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -64,7 +64,7 @@ class LocaleTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides language and country code
|
||||
* Provides language and country code.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -100,7 +100,7 @@ class LocaleTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides category and language
|
||||
* Provides category and language.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
|
||||
@@ -13,7 +13,7 @@ use Meritoo\Common\Test\Base\BaseTestCase;
|
||||
use Meritoo\Common\Utilities\MimeTypes;
|
||||
|
||||
/**
|
||||
* Tests of the useful methods for mime types of files
|
||||
* Tests of the useful methods for mime types of files.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -186,7 +186,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides not existing mime type
|
||||
* Provides not existing mime type.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -198,7 +198,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides mime type of non-image
|
||||
* Provides mime type of non-image.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -211,7 +211,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides mime type of image
|
||||
* Provides mime type of image.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -226,7 +226,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides existing mime type used to get single, one extension
|
||||
* Provides existing mime type used to get single, one extension.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -249,7 +249,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides existing mime type used to get multiple, more than one extension
|
||||
* Provides existing mime type used to get multiple, more than one extension.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -316,7 +316,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides not existing mime types
|
||||
* Provides not existing mime types.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -344,7 +344,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides mime types used to get extensions
|
||||
* Provides mime types used to get extensions.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -357,7 +357,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
],
|
||||
[
|
||||
'application/x-7z-compressed' => '7z',
|
||||
'application/json' => 'json',
|
||||
'application/json' => 'json',
|
||||
],
|
||||
];
|
||||
|
||||
@@ -374,12 +374,12 @@ class MimeTypesTest extends BaseTestCase
|
||||
'nb',
|
||||
'mb',
|
||||
],
|
||||
'application/xml' => [
|
||||
'application/xml' => [
|
||||
'xml',
|
||||
'xsl',
|
||||
],
|
||||
'audio/mp4' => 'mp4a',
|
||||
'video/mp4' => [
|
||||
'audio/mp4' => 'mp4a',
|
||||
'video/mp4' => [
|
||||
'mp4',
|
||||
'mp4v',
|
||||
'mpg4',
|
||||
@@ -390,7 +390,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides mime types used to get extensions as upper case
|
||||
* Provides mime types used to get extensions as upper case.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -403,7 +403,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
],
|
||||
[
|
||||
'application/x-7z-compressed' => '7Z',
|
||||
'application/json' => 'JSON',
|
||||
'application/json' => 'JSON',
|
||||
],
|
||||
];
|
||||
|
||||
@@ -419,12 +419,12 @@ class MimeTypesTest extends BaseTestCase
|
||||
'XML',
|
||||
'XSL',
|
||||
],
|
||||
'audio/mp4' => 'MP4A',
|
||||
'text/html' => [
|
||||
'audio/mp4' => 'MP4A',
|
||||
'text/html' => [
|
||||
'HTML',
|
||||
'HTM',
|
||||
],
|
||||
'video/mp4' => [
|
||||
'video/mp4' => [
|
||||
'MP4',
|
||||
'MP4V',
|
||||
'MPG4',
|
||||
@@ -435,7 +435,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides real file path to get mime type
|
||||
* Provides real file path to get mime type.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -453,7 +453,7 @@ class MimeTypesTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides real file path to get information if the file is an image
|
||||
* Provides real file path to get information if the file is an image.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
|
||||
@@ -17,7 +17,7 @@ use Meritoo\Common\Utilities\Miscellaneous;
|
||||
use stdClass;
|
||||
|
||||
/**
|
||||
* Tests of the Miscellaneous methods (only static functions)
|
||||
* Tests of the Miscellaneous methods (only static functions).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -30,7 +30,7 @@ class MiscellaneousTest extends BaseTestCase
|
||||
|
||||
public function testGetDirectoryContent()
|
||||
{
|
||||
$directoryPath = __DIR__ . '/../';
|
||||
$directoryPath = __DIR__.'/../';
|
||||
$filePath = __FILE__;
|
||||
|
||||
self::assertNull(Miscellaneous::getDirectoryContent(null));
|
||||
@@ -123,8 +123,8 @@ class MiscellaneousTest extends BaseTestCase
|
||||
*/
|
||||
$uniqueFileName2 = Miscellaneous::getUniqueFileName($originalFileName);
|
||||
|
||||
$isCorrect1 = (bool)preg_match($pattern, $uniqueFileName1);
|
||||
$isCorrect2 = (bool)preg_match($pattern, $uniqueFileName2);
|
||||
$isCorrect1 = (bool) preg_match($pattern, $uniqueFileName1);
|
||||
$isCorrect2 = (bool) preg_match($pattern, $uniqueFileName2);
|
||||
|
||||
self::assertTrue($isCorrect1);
|
||||
self::assertTrue($isCorrect2);
|
||||
@@ -345,8 +345,8 @@ class MiscellaneousTest extends BaseTestCase
|
||||
{
|
||||
$suffix = '...';
|
||||
|
||||
self::assertEquals('Lorem ipsum' . $suffix, Miscellaneous::substringToWord($this->stringCommaSeparated, 20));
|
||||
self::assertEquals('Lorem ipsum dolor sit' . $suffix, Miscellaneous::substringToWord($this->stringCommaSeparated, 25));
|
||||
self::assertEquals('Lorem ipsum'.$suffix, Miscellaneous::substringToWord($this->stringCommaSeparated, 20));
|
||||
self::assertEquals('Lorem ipsum dolor sit'.$suffix, Miscellaneous::substringToWord($this->stringCommaSeparated, 25));
|
||||
|
||||
self::assertEquals('Lorem ipsum dolor', Miscellaneous::substringToWord($this->stringCommaSeparated, 20, ''));
|
||||
self::assertEquals('Lorem ipsum dolor sit amet, consectetur', Miscellaneous::substringToWord($this->stringCommaSeparated, 40, ''));
|
||||
@@ -368,26 +368,26 @@ class MiscellaneousTest extends BaseTestCase
|
||||
/*
|
||||
* Removing not directory
|
||||
*/
|
||||
$directoryPath = sys_get_temp_dir() . '/ipsum.txt';
|
||||
$directoryPath = sys_get_temp_dir().'/ipsum.txt';
|
||||
touch($directoryPath);
|
||||
self::assertTrue(Miscellaneous::removeDirectory($directoryPath));
|
||||
|
||||
/*
|
||||
* Removing simple directory
|
||||
*/
|
||||
$directoryPath = sys_get_temp_dir() . '/lorem/ipsum';
|
||||
$directoryPath = sys_get_temp_dir().'/lorem/ipsum';
|
||||
mkdir($directoryPath, 0777, true);
|
||||
self::assertTrue(Miscellaneous::removeDirectory($directoryPath));
|
||||
|
||||
/*
|
||||
* Removing more complex directory
|
||||
*/
|
||||
$directory1Path = sys_get_temp_dir() . '/lorem/ipsum';
|
||||
$directory2Path = sys_get_temp_dir() . '/lorem/dolor/sit';
|
||||
$directory1Path = sys_get_temp_dir().'/lorem/ipsum';
|
||||
$directory2Path = sys_get_temp_dir().'/lorem/dolor/sit';
|
||||
|
||||
mkdir($directory1Path, 0777, true);
|
||||
mkdir($directory2Path, 0777, true);
|
||||
self::assertTrue(Miscellaneous::removeDirectory(sys_get_temp_dir() . '/lorem', false));
|
||||
self::assertTrue(Miscellaneous::removeDirectory(sys_get_temp_dir().'/lorem', false));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -520,8 +520,8 @@ class MiscellaneousTest extends BaseTestCase
|
||||
'and/the/third',
|
||||
];
|
||||
|
||||
self::assertEquals('/' . implode('/', $paths1), Miscellaneous::concatenatePaths($paths1));
|
||||
self::assertEquals('/' . implode('/', $paths1), Miscellaneous::concatenatePaths($paths1[0], $paths1[1], $paths1[2]));
|
||||
self::assertEquals('/'.implode('/', $paths1), Miscellaneous::concatenatePaths($paths1));
|
||||
self::assertEquals('/'.implode('/', $paths1), Miscellaneous::concatenatePaths($paths1[0], $paths1[1], $paths1[2]));
|
||||
|
||||
/*
|
||||
* For Windows operating system
|
||||
@@ -721,7 +721,7 @@ class MiscellaneousTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides string to convert characters to latin characters and not lower cased and not human-readable
|
||||
* Provides string to convert characters to latin characters and not lower cased and not human-readable.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -816,7 +816,7 @@ class MiscellaneousTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides string to convert characters to latin characters and lower cased and human-readable
|
||||
* Provides string to convert characters to latin characters and lower cased and human-readable.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -911,7 +911,7 @@ class MiscellaneousTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides names of files
|
||||
* Provides names of files.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -939,7 +939,7 @@ class MiscellaneousTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides string to convert to camel case
|
||||
* Provides string to convert to camel case.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -965,7 +965,7 @@ class MiscellaneousTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides path used to remove the starting / beginning directory's separator
|
||||
* Provides path used to remove the starting / beginning directory's separator.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -1009,7 +1009,7 @@ class MiscellaneousTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides path used to remove the ending directory's separator
|
||||
* Provides path used to remove the ending directory's separator.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -1053,7 +1053,7 @@ class MiscellaneousTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides empty value used to fill missing zeros
|
||||
* Provides empty value used to fill missing zeros.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
@@ -1067,7 +1067,7 @@ class MiscellaneousTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides number used to fill missing zeros
|
||||
* Provides number used to fill missing zeros.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
|
||||
@@ -22,7 +22,7 @@ use Meritoo\Common\Test\Utilities\Reflection\E;
|
||||
use Meritoo\Common\Utilities\Reflection;
|
||||
|
||||
/**
|
||||
* Tests of the useful reflection methods
|
||||
* Tests of the useful reflection methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -217,7 +217,7 @@ class ReflectionTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides invalid class and trait
|
||||
* Provides invalid class and trait.
|
||||
*
|
||||
* @return Generator
|
||||
*/
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
namespace Meritoo\Common\Utilities;
|
||||
|
||||
/**
|
||||
* Tests of the useful regular expressions methods
|
||||
* Tests of the useful regular expressions methods.
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
|
||||
@@ -12,7 +12,7 @@ use Meritoo\Common\Test\Base\BaseTestCase;
|
||||
use Meritoo\Common\Utilities\Uri;
|
||||
|
||||
/**
|
||||
* Tests of the useful uri methods (only static functions)
|
||||
* Tests of the useful uri methods (only static functions).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -58,7 +58,7 @@ class UriTest extends BaseTestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides urls to replenish protocol
|
||||
* Provides urls to replenish protocol.
|
||||
*
|
||||
* @return \Generator
|
||||
*/
|
||||
|
||||
@@ -13,7 +13,7 @@ use PHPUnit_Framework_TestCase;
|
||||
use SimpleXMLElement;
|
||||
|
||||
/**
|
||||
* Tests of the useful XML-related methods (only static functions)
|
||||
* Tests of the useful XML-related methods (only static functions).
|
||||
*
|
||||
* @author Krzysztof Niziol <krzysztof.niziol@meritoo.pl>
|
||||
* @copyright Meritoo.pl
|
||||
@@ -32,7 +32,7 @@ class XmlTest extends PHPUnit_Framework_TestCase
|
||||
$element2 = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8"?><employees />');
|
||||
|
||||
$merged = Xml::mergeNodes($element1, $element2);
|
||||
self::assertEquals('', (string)$merged);
|
||||
self::assertEquals('', (string) $merged);
|
||||
|
||||
/*
|
||||
* XMLs with data
|
||||
@@ -41,7 +41,7 @@ class XmlTest extends PHPUnit_Framework_TestCase
|
||||
$element2 = new SimpleXMLElement($this->advancedXml);
|
||||
|
||||
$merged = Xml::mergeNodes($element1, $element2);
|
||||
self::assertEquals('John', (string)$merged->author[0]->first_name);
|
||||
self::assertEquals('John', (string) $merged->author[0]->first_name);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user