/** * @param array $courseClassArrays * * @author Andreas Glaser * * @depends testGetAll */ public function testGet(array $courseClassArrays) { $courseClassArray = ArrayHelper::getRandomValue($courseClassArrays); $response = $this->resource->get($courseClassArray['id']); $payload = $response->getBodyDecoded(); $this->assertEquals(200, $response->getStatusCode()); $this->assertIsArray($payload); $this->assertCourseClassArray($payload); }
/** * @param array $config * * @return $this * @author Andreas Glaser */ public function setConfig(array $config = []) { ArrayHelper::assocIndexesExist($config, $this->config, true); $this->config = array_replace_recursive($this->config, $config); return $this; }
/** * @author Andreas Glaser */ public function testMerge() { $array1 = ['assoc1' => 'value1', 'assoc2' => ['assoc3' => 'value2', 10 => 'value3'], 'assoc4' => [], 0 => 'value4']; $this->assertEquals(['assoc1' => 'overwritten', 'assoc2' => ['assoc3' => 'value2', 10 => 'value3'], 'assoc4' => [], 0 => 'value4'], ArrayHelper::merge($array1, ['assoc1' => 'overwritten'])); $this->assertEquals(['assoc1' => 'value1', 'assoc2' => ['assoc3' => 'value2', 10 => 'value3'], 'assoc4' => [], 0 => 'value4', 1 => 'added'], ArrayHelper::merge($array1, [0 => 'added'])); $this->assertEquals(['assoc1' => 'value1', 'assoc2' => 'overwritten', 'assoc4' => [], 0 => 'value4'], ArrayHelper::merge($array1, ['assoc2' => 'overwritten'])); $this->assertEquals(['assoc1' => 'value1', 'assoc2' => ['assoc3' => 'value2', 10 => 'value3'], 'assoc4' => [0 => 'cheese', 'abc' => 'tasty'], 0 => 'value4'], ArrayHelper::merge($array1, ['assoc4' => ['cheese', 'abc' => 'tasty']])); $this->setExpectedException('\\InvalidArgumentException', 'Argument 2 is not an array'); ArrayHelper::merge(['abc'], 123); }
/** * @param $path * * @return null * @author Andreas Glaser */ protected function pathToAlias($path) { if ($this->autoRootAlias) { $path = $this->autoRootAlias . '.' . $path; } $lastPos = strrpos($path, '.'); $field = substr($path, $lastPos + 1); $path = substr($path, 0, $lastPos); return ArrayHelper::get($this->aliasMap, $path) . '.' . $field; }