Make sure we can connect to memcached

This commit is contained in:
Timothy Warren 2017-03-01 12:04:01 -05:00
parent 0aa750e2c6
commit 1378768ff0
4 changed files with 18 additions and 22 deletions

View File

@ -5,23 +5,17 @@ services:
test:7: test:7:
before_script: before_script:
- sh build/docker_install.sh > /dev/null - sh build/docker_install.sh > /dev/null
#- apk add --no-cache php7-apcu php7-memcached php7-phpdbg
#- echo '\nextension=apcu.so\nextension=memcached.so' >> /etc/php7/php.ini
- curl -sS https://getcomposer.org/installer | php - curl -sS https://getcomposer.org/installer | php
- php composer.phar install --ignore-platform-reqs - php composer.phar install --ignore-platform-reqs
#image: php:7-alpine
image: php:7 image: php:7
script: script:
- phpdbg -qrr -- ./vendor/bin/phpunit -c build - phpdbg -qrr -- ./vendor/bin/phpunit --coverage-text --colors=never
test:7.1: test:7.1:
before_script: before_script:
- sh build/docker_install.sh > /dev/null - sh build/docker_install.sh > /dev/null
#- apk add --no-cache php7.1-apcu php7.1-memcached php7.1-phpdbg
#- echo '\nextension=apcu.so\nextension=memcached.so' >> /etc/php7.1/php.ini
- curl -sS https://getcomposer.org/installer | php - curl -sS https://getcomposer.org/installer | php
- php composer.phar install --ignore-platform-reqs - php composer.phar install --ignore-platform-reqs
#image: php:7.1-alpine
image: php:7.1 image: php:7.1
script: script:
- phpdbg -qrr -- ./vendor/bin/phpunit -c build - phpdbg -qrr -- ./vendor/bin/phpunit --coverage-text --colors=never

View File

@ -33,14 +33,15 @@ class MemcachedDriver extends AbstractDriver {
* @param array $options * @param array $options
* @throws CacheException * @throws CacheException
*/ */
public function __construct(array $config = [], array $options = []) public function __construct(
array $config = ['host' => '127.0.0.1', 'port' => '11211'],
array $options = []
)
{ {
// @codeCoverageIgnoreStart
if ( ! class_exists('Memcached')) if ( ! class_exists('Memcached'))
{ {
throw new CacheException("Memcached driver requires memcached extensions"); throw new CacheException("Memcached driver requires memcached extensions");
} }
// @codeCoverageIgnoreEnd
try try
{ {
@ -48,7 +49,6 @@ class MemcachedDriver extends AbstractDriver {
$this->conn->setOption(Memcached::OPT_BINARY_PROTOCOL, true); $this->conn->setOption(Memcached::OPT_BINARY_PROTOCOL, true);
$this->conn->addServer($config['host'], (int) $config['port']); $this->conn->addServer($config['host'], (int) $config['port']);
// @codeCoverageIgnoreStart
if ( ! empty($options)) if ( ! empty($options))
{ {
$this->conn->setOptions($options); $this->conn->setOptions($options);
@ -60,7 +60,6 @@ class MemcachedDriver extends AbstractDriver {
// match the requirements of the interface // match the requirements of the interface
throw new CacheException($e->getMessage(), $e->getCode(), $e); throw new CacheException($e->getMessage(), $e->getCode(), $e);
} }
// @codeCoverageIgnoreEnd
} }
/** /**

View File

@ -22,10 +22,16 @@ class MemcachedDriverTest extends DriverTestBase {
public function setUp() public function setUp()
{ {
$this->driver = new MemcachedDriver([ $config = [
'host' => 'localhost', 'host' => '127.0.0.1',
'port' => '11211', 'port' => 11211
]); ];
if (array_key_exists('MEMCACHED_HOST', $_ENV))
{
$config['host'] = $_ENV['MEMCACHED_HOST'];
}
$this->driver = new MemcachedDriver($config);
$this->driver->flush(); $this->driver->flush();
} }
} }

View File

@ -16,15 +16,12 @@
namespace Aviat\Banker\Tests; namespace Aviat\Banker\Tests;
use Aviat\Banker\Pool; use Aviat\Banker\{Item, ItemCollection, Pool};
use Aviat\Banker\Item;
use Aviat\Banker\ItemCollection;
use Aviat\Banker\Exception\InvalidArgumentException; use Aviat\Banker\Exception\InvalidArgumentException;
use Monolog\Logger; use Monolog\Logger;
use Monolog\Handler\SyslogHandler; use Monolog\Handler\SyslogHandler;
use PHPUnit\Framework\TestCase; use PHPUnit\Framework\TestCase;
use Psr\Log\LoggerInterface; use Psr\Log\{LoggerInterface, NullLogger};
use Psr\Log\NullLogger;
class PoolTest extends TestCase { class PoolTest extends TestCase {