示例#1
0
 public function testCreateWithInjectable()
 {
     // let's imitate that One is injectable by providing DI configuration for it
     $this->config->extend(array('Magento\\Framework\\ObjectManager\\Factory\\Fixture\\OneScalar' => array('arguments' => array('foo' => 'bar'))));
     /** @var \Magento\Framework\ObjectManager\Factory\Fixture\Two $result */
     $result = $this->factory->create('Magento\\Framework\\ObjectManager\\Factory\\Fixture\\Two');
     $this->assertInstanceOf('\\Magento\\Framework\\ObjectManager\\Factory\\Fixture\\Two', $result);
     $this->assertInstanceOf('\\Magento\\Framework\\ObjectManager\\Factory\\Fixture\\OneScalar', $result->getOne());
     $this->assertEquals('bar', $result->getOne()->getFoo());
     $this->assertEquals('optional', $result->getBaz());
 }
 /**
  * Retrieve instance type without interception processing
  *
  * @param string $instanceName
  * @return string
  */
 public function getOriginalInstanceType($instanceName)
 {
     return parent::getInstanceType($instanceName);
 }
 public function testExtendIgnoresFirstShashesForSharing()
 {
     $config = new Config();
     $config->extend(['\\Some\\Class' => ['shared' => true]]);
     $this->assertTrue($config->isShared('Some\\Class'));
 }