Вход Регистрация
Файл: gapps/vendor/psy/psysh/test/Psy/Test/Readline/GNUReadlineTest.php
Строк: 71
<?php

/*
 * This file is part of Psy Shell.
 *
 * (c) 2012-2015 Justin Hileman
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace PsyTestReadline;

use 
PsyReadlineGNUReadline;

class 
GNUReadlineTest extends PHPUnit_Framework_TestCase
{
    private 
$historyFile;

    public function 
setUp()
    {
        if (!
GNUReadline::isSupported()) {
            
$this->markTestSkipped('GNUReadline not enabled');
        }

        
$this->historyFile tempnam(sys_get_temp_dir(), 'psysh_test_history');
        
file_put_contents($this->historyFile"_HiStOrY_V2_n");
    }

    public function 
testHistory()
    {
        
$readline = new GNUReadline($this->historyFile);
        
$this->assertEmpty($readline->listHistory());
        
$readline->addHistory('foo');
        
$this->assertEquals(array('foo'), $readline->listHistory());
        
$readline->addHistory('bar');
        
$this->assertEquals(array('foo''bar'), $readline->listHistory());
        
$readline->addHistory('baz');
        
$this->assertEquals(array('foo''bar''baz'), $readline->listHistory());
        
$readline->clearHistory();
        
$this->assertEmpty($readline->listHistory());
    }

    
/**
     * @depends testHistory
     */
    
public function testHistorySize()
    {
        
$readline = new GNUReadline($this->historyFile2);
        
$this->assertEmpty($readline->listHistory());
        
$readline->addHistory('foo');
        
$readline->addHistory('bar');
        
$this->assertEquals(array('foo''bar'), $readline->listHistory());
        
$readline->addHistory('baz');
        
$this->assertEquals(array('bar''baz'), $readline->listHistory());
        
$readline->addHistory('w00t');
        
$this->assertEquals(array('baz''w00t'), $readline->listHistory());
        
$readline->clearHistory();
        
$this->assertEmpty($readline->listHistory());
    }

    
/**
     * @depends testHistory
     */
    
public function testHistoryEraseDups()
    {
        
$readline = new GNUReadline($this->historyFile0true);
        
$this->assertEmpty($readline->listHistory());
        
$readline->addHistory('foo');
        
$readline->addHistory('bar');
        
$readline->addHistory('foo');
        
$this->assertEquals(array('bar''foo'), $readline->listHistory());
        
$readline->addHistory('baz');
        
$readline->addHistory('w00t');
        
$readline->addHistory('baz');
        
$this->assertEquals(array('bar''foo''w00t''baz'), $readline->listHistory());
        
$readline->clearHistory();
        
$this->assertEmpty($readline->listHistory());
    }
}
Онлайн: 0
Реклама