add authors, composers, history and settings to Tune::merge()
This commit is contained in:
@@ -26,12 +26,14 @@ class TuneAttributeArrayBuilderTest extends \Codeception\Test\Unit
|
||||
|
||||
public function testAppendMusic()
|
||||
{
|
||||
$music = new \Enzyme\Axiom\Atoms\StringAtom('Abcd|');
|
||||
$music = 'Abcd|';
|
||||
$builder = new TuneAttributeArrayBuilder();
|
||||
|
||||
$tune = $builder->appendMusic($music)->getTune();
|
||||
|
||||
$this->assertInstanceOf(Tune::class, $tune);
|
||||
$this->assertEquals($music->getValue(), trim($tune->getMusic()));
|
||||
|
||||
$settings = $tune->getSettings();
|
||||
$this->assertEquals($music, trim($settings[0]->getMusic()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -188,19 +188,31 @@ class TuneTest extends \PHPUnit_Framework_TestCase
|
||||
{
|
||||
$targetTune = TuneAttributeArrayBuilder::create()
|
||||
->addTitle('target')
|
||||
->appendMusic('|:BAG BAG|')
|
||||
->getTune();
|
||||
|
||||
$sourceTune = TuneAttributeArrayBuilder::create()
|
||||
->addTitle('source')
|
||||
->appendMusic('|:GAB GAB|')
|
||||
->addAuthor('a.non')
|
||||
->addComposer('composer')
|
||||
->addHistory('some story')
|
||||
->getTune();
|
||||
|
||||
$expected = TuneAttributeArrayBuilder::create()
|
||||
->addTitle('target')
|
||||
->addTitle('source')
|
||||
->appendMusic('|:BAG BAG|')
|
||||
->handleEndOfMusic()
|
||||
->appendMusic('|:GAB GAB|')
|
||||
->addAuthor('a.non')
|
||||
->addComposer('composer')
|
||||
->addHistory('some story')
|
||||
->getTune($targetTune->identity());
|
||||
|
||||
$result = $targetTune->merge($sourceTune);
|
||||
|
||||
$this->assertEquals($expected, $result);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user