annotate vendor/psy/psysh/test/Readline/TransientTest.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 5fb285c0d0e3
children
rev   line source
Chris@13 1 <?php
Chris@13 2
Chris@13 3 /*
Chris@13 4 * This file is part of Psy Shell.
Chris@13 5 *
Chris@13 6 * (c) 2012-2018 Justin Hileman
Chris@13 7 *
Chris@13 8 * For the full copyright and license information, please view the LICENSE
Chris@13 9 * file that was distributed with this source code.
Chris@13 10 */
Chris@13 11
Chris@13 12 namespace Psy\Test\Readline;
Chris@13 13
Chris@13 14 use Psy\Readline\Transient;
Chris@13 15
Chris@13 16 class TransientTest extends \PHPUnit\Framework\TestCase
Chris@13 17 {
Chris@13 18 public function testHistory()
Chris@13 19 {
Chris@13 20 $readline = new Transient();
Chris@13 21 $this->assertEmpty($readline->listHistory());
Chris@13 22 $readline->addHistory('foo');
Chris@13 23 $this->assertSame(['foo'], $readline->listHistory());
Chris@13 24 $readline->addHistory('bar');
Chris@13 25 $this->assertSame(['foo', 'bar'], $readline->listHistory());
Chris@13 26 $readline->addHistory('baz');
Chris@13 27 $this->assertSame(['foo', 'bar', 'baz'], $readline->listHistory());
Chris@13 28 $readline->clearHistory();
Chris@13 29 $this->assertEmpty($readline->listHistory());
Chris@13 30 }
Chris@13 31
Chris@13 32 /**
Chris@13 33 * @depends testHistory
Chris@13 34 */
Chris@13 35 public function testHistorySize()
Chris@13 36 {
Chris@13 37 $readline = new Transient(null, 2);
Chris@13 38 $this->assertEmpty($readline->listHistory());
Chris@13 39 $readline->addHistory('foo');
Chris@13 40 $readline->addHistory('bar');
Chris@13 41 $this->assertSame(['foo', 'bar'], $readline->listHistory());
Chris@13 42 $readline->addHistory('baz');
Chris@13 43 $this->assertSame(['bar', 'baz'], $readline->listHistory());
Chris@13 44 $readline->addHistory('w00t');
Chris@13 45 $this->assertSame(['baz', 'w00t'], $readline->listHistory());
Chris@13 46 $readline->clearHistory();
Chris@13 47 $this->assertEmpty($readline->listHistory());
Chris@13 48 }
Chris@13 49
Chris@13 50 /**
Chris@13 51 * @depends testHistory
Chris@13 52 */
Chris@13 53 public function testHistoryEraseDups()
Chris@13 54 {
Chris@13 55 $readline = new Transient(null, 0, true);
Chris@13 56 $this->assertEmpty($readline->listHistory());
Chris@13 57 $readline->addHistory('foo');
Chris@13 58 $readline->addHistory('bar');
Chris@13 59 $readline->addHistory('foo');
Chris@13 60 $this->assertSame(['bar', 'foo'], $readline->listHistory());
Chris@13 61 $readline->addHistory('baz');
Chris@13 62 $readline->addHistory('w00t');
Chris@13 63 $readline->addHistory('baz');
Chris@13 64 $this->assertSame(['bar', 'foo', 'w00t', 'baz'], $readline->listHistory());
Chris@13 65 $readline->clearHistory();
Chris@13 66 $this->assertEmpty($readline->listHistory());
Chris@13 67 }
Chris@13 68
Chris@13 69 public function testSomeThingsAreAlwaysTrue()
Chris@13 70 {
Chris@13 71 $readline = new Transient();
Chris@13 72 $this->assertTrue(Transient::isSupported());
Chris@13 73 $this->assertTrue($readline->readHistory());
Chris@13 74 $this->assertTrue($readline->writeHistory());
Chris@13 75 }
Chris@13 76 }