public function testBeanWithNoName() { $beanWithConstructValue = $this->container->getBean('beanWithNoBeanName'); $this->isInstanceOf('Annotation\\BeanWithConstructValue', $beanWithConstructValue, 'not NeanWithConstructValue instance'); $this->assertEquals('Daniele BB', $beanWithConstructValue->getName(), 'no Daniele BB name'); $this->assertEquals(99, $beanWithConstructValue->getId(), 'no 99 random '); $list = $beanWithConstructValue->getList(); $this->assertTrue(is_array($list), 'no List array'); $this->assertTrue(sizeof($list) == 3, 'Array not 3 element'); $this->assertEquals($list[0], '99', '99 not found'); $this->assertEquals($list[1], 'Messi', 'Messi not found'); $this->assertEquals($list[2], 'Ronaldo', 'Ronaldo not found'); }
public function __construct($path, $configFile = null) { OvoSystemRequired::check(); if (is_null($path) or !is_dir($path)) { throw new OvoContainerException('Source dir ' . $path . ' not found'); } AnnotationContainer::addNamespaceToClassLoader(null, $path); PropertiesLoader::getInstance(ConfigurationLoader::getOvoConfigurationPath()); if (isset($configFile)) { self::setIniFile($configFile); } $this->loadApplication($path); }
public function testSimpleRandomWithIniValue() { //TODO FIX -> add properties file, refresh container! $this->container->close(); $container = new AnnotationContainer('test/src', __DIR__ . '/config/annotation.ini'); $simpleRandom = $container->getBean('prototypeSimpleRandomIniValue'); $this->assertInstanceOf('\\Annotation\\SimpleRandomIniValue', $simpleRandom); $this->assertEquals(99, $simpleRandom->getRandomId(), 'Random id not 99'); $container->close(); $this->assertNull($simpleRandom->getRandomId(), 'Random id not null'); $this->container = null; }
<?php ini_set('display_errors', 1); error_reporting(E_ALL); use Ovo\Container\AnnotationContainer; //OVO-CONTAINER Framework require_once '../../src/Ovo/Container/OvoLoader.php'; //create the DI container $container = new AnnotationContainer('../src', '../config/property.ini'); //get bean var_dump($container->getBean('constructValue'));
<?php ini_set('display_errors', 1); error_reporting(E_ALL); use Ovo\Container\AnnotationContainer; //OVO-CONTAINER Framework require_once '../../src/Ovo/Container/OvoLoader.php'; //create the DI container $container = new AnnotationContainer('../src', '../config/property.ini'); //timer $time = new Ovo\Test\Utility\Timer(); $time->start(); //get SimpleRandom as prototype $prototype = $container->getBean('prototypeSimpleRandom'); $prototypeSecond = $container->getBean('prototypeSimpleRandom'); echo '(PROTOTYPE) ID INSTANCE: ' . $prototype->getRandomId() . ' - ID SECOND INSTANCE: ' . $prototypeSecond->getRandomId() . '<hr>'; //get SimpleRandom as Singleton $randomSingletonOne = $container->getBean('singletonSimpleRandom'); if (isset($_GET['delete'])) { $container->destroyBean('singletonSimpleRandom'); } $randomSingletonTwo = $container->getBean('singletonSimpleRandom'); echo '(SINGLETON)ID INSTANCE: ' . $randomSingletonOne->getRandomId() . ' - ID SECOND INSTANCE: ' . $randomSingletonTwo->getRandomId() . '<hr>'; //get SimpleRandom as session $sessionRandomOne = $container->getBean('sessionSimpleRandom'); if (isset($_GET['delete'])) { $container->destroyBean('sessionSimpleRandom'); } $sessionRandomTwo = $container->getBean('sessionSimpleRandom'); echo '(SESSION) ID INSTANCE: ' . $sessionRandomOne->getRandomId() . ' - ID SECOND INSTANCE: ' . $sessionRandomTwo->getRandomId() . '<hr>'; echo 'Elapsed time: ' . $time->stop();