* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) */ class MockProxy { protected static $mock; /** * Set static expectations * * @param mixed $mock */ public static function setStaticExpectations($mock) { static::$mock = $mock; } /** * Any static calls we get are passed along to self::$mock. public static * * @param string $name * @param mixed $args * * @return mixed */ public static function __callStatic($name, $args) { return call_user_func_array( [static::$mock, $name], $args ); } } class StockAvailable extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Context extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Db extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Configuration extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Tools extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Category extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; public $id = null; } class Group extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Manufacturer extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Combination extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Shop extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Feature extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class FeatureValue extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; } class Module extends MockProxy { // Redeclare to use this instead MockProxy::mock protected static $mock; }