api_key = env('SENDGRID_API_KEY'); } } class MockConfig implements ArrayAccess, Illuminate\Contracts\Config\Repository { private $item; /** * MockConfig constructor. */ public function __construct() { $filesystem = new \Illuminate\Filesystem\Filesystem; $services = $filesystem->getRequire(__DIR__ . '/config/services.php'); array_set($this->item, 'services.sendgrid', $services['sendgrid']); } /** * Determine if the given configuration value exists. * * @param string $key * @return bool */ public function has($key) { // TODO: Implement has() method. } /** * Get the specified configuration value. * * @param string $key * @param mixed $default * @return mixed */ public function get($key, $default = null) { return Arr::get($this->item, $key, $default); } /** * Set a given configuration value. * * @param array|string $key * @param mixed $value * @return void */ public function set($key, $value = null) { array_set($this->item, $key, $value); } /** * Prepend a value onto an array configuration value. * * @param string $key * @param mixed $value * @return void */ public function prepend($key, $value) { // TODO: Implement prepend() method. } /** * Push a value onto an array configuration value. * * @param string $key * @param mixed $value * @return void */ public function push($key, $value) { // TODO: Implement push() method. } /** * Whether a offset exists * @link http://php.net/manual/en/arrayaccess.offsetexists.php * @param mixed $offset

* An offset to check for. *

* @return boolean true on success or false on failure. *

*

* The return value will be casted to boolean if non-boolean was returned. * @since 5.0.0 */ public function offsetExists($offset) { // TODO: Implement offsetExists() method. } /** * Offset to retrieve * @link http://php.net/manual/en/arrayaccess.offsetget.php * @param mixed $offset

* The offset to retrieve. *

* @return mixed Can return all value types. * @since 5.0.0 */ public function offsetGet($offset) { return $this->get($offset); } /** * Offset to set * @link http://php.net/manual/en/arrayaccess.offsetset.php * @param mixed $offset

* The offset to assign the value to. *

* @param mixed $value

* The value to set. *

* @return void * @since 5.0.0 */ public function offsetSet($offset, $value) { // TODO: Implement offsetSet() method. } /** * Offset to unset * @link http://php.net/manual/en/arrayaccess.offsetunset.php * @param mixed $offset

* The offset to unset. *

* @return void * @since 5.0.0 */ public function offsetUnset($offset) { // TODO: Implement offsetUnset() method. } /** * Get all of the configuration items for the application. * * @return array */ public function all() { return $this->item; } }