public function test_can_register_an_instance_in_the_container() { $abstract = 'abstract'; $concrete = 'concrete'; $this->wrappedMock->shouldReceive('instance')->with($abstract, $concrete)->once()->andReturn('resolved'); $this->container->instance($abstract, $concrete); }
/** * @param Application $app */ public function bootstrap(Application $app) { foreach ($app->getRegistry()->getDefinitions() as $abstract => $concrete) { if (is_string($concrete) || is_callable($concrete)) { $this->container->bind($abstract, $concrete); } else { $this->container->instance($abstract, $concrete); } } }
/** * Define a container implementation * * @param ContainerDefinition $definition * * @return Container */ public function defineContainer(ContainerDefinition $definition) : Container { $this->container = $definition->getDefinition(); $this->container->instance(Container::class, $this->container); $this->container->instance(ApplicationContract::class, $this); return $this->container; }