Files
abcParser/tests/unit/AbcParserCest.php
2016-04-15 21:44:45 -04:00

79 lines
2.0 KiB
PHP

<?php
use \Codeception\Util\Stub;
use \XaiCorp\AbcParser\Parser;
use \XaiCorp\AbcParser\Interfaces\Builder;
class AbcParserCest
{
/**
* @var \XaiCorp\AbcParser\Interfaces\Builder
*/
protected $builder;
/**
* @var Parser;
*/
protected $parser;
public function _before(UnitTester $I)
{
}
public function _after(UnitTester $I)
{
unset($builder);
}
// tests: trying to...
public function createParser(UnitTester $I)
{
$builder = \Mockery::mock(Builder::Class)
->shouldReceive('newCollection')->once()
->shouldreceive('getCollection')->once()->andreturn(true)
->mock();
$parser = new Parser($builder);
$I->assertInstanceOf(Parser::class, $parser);
}
public function seeParseABCCallNewCollection(UnitTester $I)
{
$abc = '';
$builder = \Mockery::mock(Builder::Class)
->shouldReceive('newCollection')->once()
->shouldreceive('getCollection')->once()->andreturn(true)
->mock();
$parser = new Parser($builder);
$result = $parser->parseABC($abc);
$I->assertTrue($result);
}
public function seeParseABCExample1(UnitTester $I)
{
$abc = file_get_contents(__DIR__.'/../_data/abc/valid_abc_1.abc');
$builder = \Mockery::mock(Builder::Class)
->shouldReceive('newCollection')->once()
->shouldReceive('newPerson')->once()
->shouldReceive('newTune')->once()
->shouldReceive('newSetting')->once()
->shouldReceive('appendToSetting')->once()
->shouldReceive('storeTune')->once()
->shouldreceive('getCollection')->once()->andreturn(true);
$builder->shouldReceive('setOnTune')
->with('X', '3')
->atMost()->times(4);
$builder = $builder->mock();
$parser = new Parser($builder);
$result = $parser->parseABC($abc);
$I->assertTrue($result);
}
}