CommandResultTest.php #1

  • //
  • guest/
  • thomas_gray/
  • jambox/
  • main/
  • swarm/
  • tests/
  • phpunit/
  • P4Test/
  • Connection/
  • CommandResultTest.php
  • View
  • Commits
  • Open Download .zip Download (4 KB)
<?php
/**
 * Test methods for the P4 fielded model iterator.
 *
 * @copyright   2012 Perforce Software. All rights reserved.
 * @license     Please see LICENSE.txt in top-level folder of this distribution.
 * @version     <release>/<patch>
 */

namespace P4Test\Connection;

use P4Test\TestCase;
use P4\Connection\CommandResult;

class CommandResultTest extends TestCase
{
    /**
     * Test set and get data.
     */
    public function testSetGetData()
    {
        $result = new CommandResult('test');
        $this->assertSame(
            array(),
            $result->getData(),
            'Expected data after init'
        );
        $this->assertFalse($result->hasData(), 'Expect no data after init');

        $result->setData('bob');
        $this->assertSame(
            array('bob'),
            $result->getData(),
            'Expected data after 1 set'
        );
        $this->assertTrue($result->hasData(), 'Expect data after set 1');

        $result->setData(array('bob', 'fred', 'jane'));
        $this->assertSame(
            array('bob', 'fred', 'jane'),
            $result->getData(),
            'Expected data after 3 set'
        );
        $this->assertTrue($result->hasData(), 'Expect data after set 3');
    }

    /**
     * Test set, add, and get warnings.
     */
    public function testSetAddGetWarnings()
    {
        $result = new CommandResult('test');
        $this->assertSame(
            array(),
            $result->getWarnings(),
            'Expected warnings after init'
        );
        $this->assertFalse($result->hasWarnings(), 'Expect no warnings after init');

        $result->setWarnings('bob');
        $this->assertSame(
            array('bob'),
            $result->getWarnings(),
            'Expected Warnings after 1 set'
        );
        $this->assertTrue($result->hasWarnings(), 'Expect warnings after set 1');

        $result->setWarnings(array('bob', 'fred', 'jane'));
        $this->assertSame(
            array('bob', 'fred', 'jane'),
            $result->getWarnings(),
            'Expected Warnings after 3 set'
        );
        $this->assertTrue($result->hasWarnings(), 'Expect warnings after set 3');

        $result->addWarning('another');
        $this->assertSame(
            array('bob', 'fred', 'jane', 'another'),
            $result->getWarnings(),
            'Expected Warnings after 1 added'
        );
        $this->assertTrue($result->hasWarnings(), 'Expect warnings after add');
    }

    /**
     * Test set, add, and get errors.
     */
    public function testSetAddGetErrors()
    {
        $result = new CommandResult('test');
        $this->assertSame(
            array(),
            $result->getErrors(),
            'Expected errors after init'
        );
        $this->assertFalse($result->hasErrors(), 'Expect no errors after init');

        $result->setErrors('bob');
        $this->assertSame(
            array('bob'),
            $result->getErrors(),
            'Expected errors after 1 set'
        );
        $this->assertTrue($result->hasErrors(), 'Expect errors after set 1');

        $result->setErrors(array('bob', 'fred', 'jane'));
        $this->assertSame(
            array('bob', 'fred', 'jane'),
            $result->getErrors(),
            'Expected errors after 3 set'
        );
        $this->assertTrue($result->hasErrors(), 'Expect errors after set 3');

        $result->addError('another');
        $this->assertSame(
            array('bob', 'fred', 'jane', 'another'),
            $result->getErrors(),
            'Expected errors after 1 added'
        );
        $this->assertTrue($result->hasErrors(), 'Expect errors after add');
    }
}
# Change User Description Committed
#1 18730 Liz Lam clean up code and move things around