testClass = new MyDecoder(); } public function tearDown() { parent::tearDown(); $this->testClass = null; } public function testProperties() { $this->assertFalse($this->testClass->setProperties('noexist', true)); $this->assertTrue($this->testClass->setProperties('code', 'decode')); $this->assertEquals('decode', $this->testClass->getProperties('code')); $this->assertTrue($this->testClass->setProperties('type', 'rawurl')); $this->assertEquals('rawurl', $this->testClass->getProperties('type')); } public function testDecoder() { // будет задействована функция urlencode $this->assertEquals(true, $this->testClass->setProperties('code', 'encode')); $this->assertEquals(true, $this->testClass->setProperties('type', 'url')); $this->assertEquals('Th%09e+te%24t+tExt%21', $this->testClass->getDecoder('Th e te$t tExt!')); // будет задействована функция rawurlencode $this->assertEquals(true, $this->testClass->setProperties('code', 'encode')); $this->assertEquals(true, $this->testClass->setProperties('type', 'rawurl')); $this->assertEquals('Th%09e%20te%24t%20tExt%21', $this->testClass->getDecoder('Th e te$t tExt!')); // будет задействована функция urldecode $this->assertEquals(true, $this->testClass->setProperties('code', 'decode')); $this->assertEquals(true, $this->testClass->setProperties('type', 'url')); $this->assertEquals('Th e te$t tExt!', $this->testClass->getDecoder('Th%09e+te%24t+tExt%21')); // будет задействована функция rawurldecode $this->assertEquals(true, $this->testClass->setProperties('code', 'decode')); $this->assertEquals(true, $this->testClass->setProperties('type', 'rawurl')); $this->assertEquals('Th e te$t tExt!', $this->testClass->getDecoder('Th%09e%20te%24t%20tExt%21')); } }