示例#1
0
 /**
  * Sets up the extensions environment for Platform.
  *
  * @return void
  */
 public function setupExtensions()
 {
     Extension::setMigrator($this->app['migrator']);
     Extension::setConnectionResolver($this->app['db']);
     Extension::setEventDispatcher($this->app['events']);
     $this->extensionBag->findAndRegisterExtensions();
     $this->extensionBag->sortExtensions();
 }
示例#2
0
 public function testExtensionsCanBeSorted()
 {
     $bag = new ExtensionBag($filesystem = m::mock('Illuminate\\Filesystem\\Filesystem'), $finder = m::mock('Cartalyst\\Extensions\\FinderInterface'));
     $extension1 = m::mock('Cartalyst\\Extensions\\ExtensionInterface');
     $extension1->shouldReceive('getSlug')->times(3)->andReturn('foo/bar');
     $extension1->shouldReceive('getDependencies')->once()->andReturn(array('baz/qux'));
     $extension1->shouldReceive('register')->once();
     $bag->register($extension1);
     $extension2 = m::mock('Cartalyst\\Extensions\\ExtensionInterface');
     $extension2->shouldReceive('getSlug')->times(3)->andReturn('baz/qux');
     $extension2->shouldReceive('getDependencies')->once()->andReturn(array());
     $extension2->shouldReceive('register')->once();
     $bag->register($extension2);
     $bag->sortExtensions();
     $expected = array('baz/qux', 'foo/bar');
     $this->assertEquals(implode('.', $expected), implode('.', array_map(function ($extension) {
         return $extension->getSlug();
     }, $bag->all())));
 }
示例#3
0
 /**
  * Returns the container associated with the extension bag.
  *
  * @return \Illuminate\Container\Container
  */
 public function getContainer()
 {
     return $this->extensionBag->getContainer();
 }