/** @test */
public function it_composes_a_view_using_each_view_composer()
{
$view = 'view.test';
$this->app->bind('Coderabbi\\Virtuoso\\Tests\\ComposerStub', function () {
$composer = new ComposerStub();
$this->composers[] = $composer;
return $composer;
});
$compositeComposer = new CompositeComposerStub($this->app);
$compositeComposer->setComposers(['Coderabbi\\Virtuoso\\Tests\\ComposerStub', 'Coderabbi\\Virtuoso\\Tests\\ComposerStub']);
$compositeComposer->compose($view);
// Should create two composers
$this->assertEquals(2, count($this->composers));
// Each composer should compose $view
foreach ($this->composers as $composer) {
$this->assertEquals($view, $composer->composedView);
}
}