Unit Testing
This commit is contained in:
parent
6ac2272114
commit
5b99af0f82
@ -3,14 +3,26 @@ namespace Ratchet\Logging;
|
||||
use Monolog\Logger;
|
||||
|
||||
class MonologAdapter extends Logger implements LoggerInterface {
|
||||
/**
|
||||
* Maps to Monolog\Logger::addInfo
|
||||
* @param string
|
||||
*/
|
||||
function note($msg) {
|
||||
$this->addInfo($msg);
|
||||
}
|
||||
|
||||
/**
|
||||
* Maps to Monolog\Logger::addWarning
|
||||
* @param string
|
||||
*/
|
||||
function warning($msg) {
|
||||
$this->addWarning($msg);
|
||||
}
|
||||
|
||||
/**
|
||||
* Maps to Monolog\Logger::addError
|
||||
* @param string
|
||||
*/
|
||||
function error($msg) {
|
||||
$this->addError($msg);
|
||||
}
|
||||
|
30
tests/Ratchet/Tests/Logging/NullLoggerTest.php
Normal file
30
tests/Ratchet/Tests/Logging/NullLoggerTest.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
namespace Ratchet\Tests\Logging;
|
||||
use Ratchet\Logging\NullLogger;
|
||||
|
||||
/**
|
||||
* @covers Ratchet\Logging\NullLogger
|
||||
*/
|
||||
class NullLoggerTest extends \PHPUnit_Framework_TestCase {
|
||||
protected $_log;
|
||||
|
||||
public function setUp() {
|
||||
$this->_log = new NullLogger;
|
||||
}
|
||||
|
||||
public function testInterface() {
|
||||
$this->assertInstanceOf('\\Ratchet\\Logging\\LoggerInterface', $this->_log);
|
||||
}
|
||||
|
||||
public function testNoteDoesNothing() {
|
||||
$this->assertNull($this->_log->note('hi'));
|
||||
}
|
||||
|
||||
public function testWarningDoesNothing() {
|
||||
$this->assertNull($this->_log->warning('hi'));
|
||||
}
|
||||
|
||||
public function testErrorDoesNothing() {
|
||||
$this->assertNull($this->_log->error('hi'));
|
||||
}
|
||||
}
|
19
tests/Ratchet/Tests/Mock/ArrayLogger.php
Normal file
19
tests/Ratchet/Tests/Mock/ArrayLogger.php
Normal file
@ -0,0 +1,19 @@
|
||||
<?php
|
||||
namespace Ratchet\Tests\Mock;
|
||||
use Ratchet\Logging\LoggerInterface;
|
||||
|
||||
class ArrayLogger implements LoggerInterface {
|
||||
public $last_msg = '';
|
||||
|
||||
public function note($msg) {
|
||||
$this->last_msg = $msg;
|
||||
}
|
||||
|
||||
public function warning($msg) {
|
||||
$this->last_msg = $msg;
|
||||
}
|
||||
|
||||
public function error($msg) {
|
||||
$this->last_msg = $msg;
|
||||
}
|
||||
}
|
@ -3,15 +3,26 @@ namespace Ratchet\Tests;
|
||||
use Ratchet\Server;
|
||||
use Ratchet\Tests\Mock\FakeSocket as Socket;
|
||||
use Ratchet\Tests\Mock\Application as TestApp;
|
||||
use Ratchet\Tests\Mock\ArrayLogger;
|
||||
|
||||
/**
|
||||
* @covers Ratchet\Server
|
||||
*/
|
||||
class ServerTest extends \PHPUnit_Framework_TestCase {
|
||||
protected $_catalyst;
|
||||
protected $_server;
|
||||
|
||||
public function setUp() {
|
||||
$this->_server = new Server(new Socket());
|
||||
$this->_catalyst = new Socket;
|
||||
$this->_server = new Server($this->_catalyst);
|
||||
}
|
||||
|
||||
protected function getPrivateProperty($class, $name) {
|
||||
$reflectedClass = new \ReflectionClass($class);
|
||||
$property = $reflectedClass->getProperty($name);
|
||||
$property->setAccessible(true);
|
||||
|
||||
return $property->getValue($class);
|
||||
}
|
||||
|
||||
public function testServerHasServerInterface() {
|
||||
@ -19,6 +30,32 @@ class ServerTest extends \PHPUnit_Framework_TestCase {
|
||||
$this->assertThat($this->_server, $constraint);
|
||||
}
|
||||
|
||||
public function testNullLoggerIsSetInConstruct() {
|
||||
$this->assertInstanceOf('\\Ratchet\\Logging\\LoggerInterface', $this->getPrivateProperty($this->_server, '_log'));
|
||||
}
|
||||
|
||||
public function testPassedLoggerIsSetInConstruct() {
|
||||
$logger = new ArrayLogger;
|
||||
$server = new Server(new Socket(), $logger);
|
||||
|
||||
$this->assertSame($logger, $this->getPrivateProperty($server, '_log'));
|
||||
}
|
||||
|
||||
public function testLoggerIsSetInMethod() {
|
||||
$logger = new ArrayLogger;
|
||||
$this->_server->setLogger($logger);
|
||||
|
||||
$this->assertSame($logger, $this->getPrivateProperty($this->_server, '_log'));
|
||||
}
|
||||
|
||||
public function testGetMasterReturnsCatalyst() {
|
||||
$this->assertSame($this->_catalyst, $this->_server->getMaster());
|
||||
}
|
||||
|
||||
public function testIteration() {
|
||||
$this->assertInstanceOf('\\Iterator', $this->_server->getIterator());
|
||||
}
|
||||
|
||||
public function testServerCanNotRunWithoutApplication() {
|
||||
$this->setExpectedException('\\RuntimeException');
|
||||
$this->_server->run();
|
||||
|
Loading…
Reference in New Issue
Block a user