public function testCanResolveTheSameServiceContainerObject() { $container1 = new Container(); $container2 = $container1->make('alexlvcom\\ServiceContainer\\Container'); $container3 = $this->containerMock->make('alexlvcom\\ServiceContainer\\Container'); $container4 = $this->containerMock->make('alexlvcom\\ServiceContainer\\Container'); $this->assertTrue($container1 === $container2, 'Container objects are not equal (first container object created natively)'); $this->assertTrue($container3 === $container4, 'Container objects are not equal (each container created through container)'); }
} if ($climate->arguments->defined('name') === false || $climate->arguments->get('name') === '') { $climate->usage(); exit; } $time_start = microtime(true); $taskName = $climate->arguments->get('name'); if (substr($taskName, 0, 1) === '\\') { // Absolute namespace provided $className = substr($taskName, 1); } else { // relative path goes with prepended alexlvcom\TaskRunner\Tasks namespace $className = 'alexlvcom\\TaskRunner\\Tasks\\' . $climate->arguments->get('name'); } if (class_exists($className)) { $task = $container->make($className); $task->setServiceContainer($container); $task->setDocroot(ROOTPATH); $task->setClimate(new \alexlvcom\TaskRunner\Helpers\Climate()); $task->setLogPath(TASK_LOG_PATH); if ($task instanceof alexlvcom\TaskRunner\Task) { if (property_exists($className, 'params')) { $paramValidator = new ParamValidator(); foreach ($className::$params as $paramName => $paramRules) { if (in_array('required', explode('|', $paramRules))) { $climate->arguments->add([$paramName => ['longPrefix' => $paramName, 'required' => true]]); } else { $argument = ['longPrefix' => $paramName, 'required' => false]; $defValue = $paramValidator->findDefaultValue($paramRules); if ($defValue !== false) { $argument['defaultValue'] = $defValue;