62 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
namespace Ratchet\Tests\Resource;
 | 
						|
use Ratchet\Resource\Connection;
 | 
						|
use Ratchet\Tests\Mock\FakeSocket;
 | 
						|
 | 
						|
/**
 | 
						|
 * @covers Ratchet\Resource\Connection
 | 
						|
 */
 | 
						|
class ConnectionTest extends \PHPUnit_Framework_TestCase {
 | 
						|
    /**
 | 
						|
     * @var Ratchet\Tests\Mock\FakeSocket
 | 
						|
     */
 | 
						|
    protected $_fs;
 | 
						|
 | 
						|
    /**
 | 
						|
     * @var Ratchet\Resource\Connection
 | 
						|
     */
 | 
						|
    protected $_c;
 | 
						|
 | 
						|
    public function setUp() {
 | 
						|
        $this->_fs = new FakeSocket;
 | 
						|
        $this->_c  = new Connection($this->_fs);
 | 
						|
    }
 | 
						|
 | 
						|
    public static function keyAndValProvider() {
 | 
						|
        return array(
 | 
						|
            array('hello', 'world')
 | 
						|
          , array('herp',  'derp')
 | 
						|
          , array('depth', array('hell', 'yes'))
 | 
						|
          , array('moar',  array('hellz' => 'yes'))
 | 
						|
        );
 | 
						|
    }
 | 
						|
 | 
						|
    public function testGetSocketReturnsWhatIsSetInConstruct() {
 | 
						|
        $this->assertSame($this->_fs, $this->_c->getSocket());
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * @dataProvider keyAndValProvider
 | 
						|
     */
 | 
						|
    public function testCanGetWhatIsSet($key, $val) {
 | 
						|
        $this->_c->{$key} = $val;
 | 
						|
        $this->assertEquals($val, $this->_c->{$key});
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * @dataProvider keyAndValProvider
 | 
						|
     */
 | 
						|
    public function testIssetWorksOnOverloadedVariables($key, $val) {
 | 
						|
        $this->_c->{$key} = $val;
 | 
						|
        $this->assertTrue(isset($this->_c->{$key}));
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * @dataProvider keyAndValProvider
 | 
						|
     */
 | 
						|
    public function testUnsetMakesIssetReturnFalse($key, $val) {
 | 
						|
        $this->_c->{$key} = $val;
 | 
						|
        unset($this->_c->{$key});
 | 
						|
        $this->assertFalse(isset($this->_c->{$key}));
 | 
						|
    }
 | 
						|
} |