Example #1
0
 public function testGetByIndex()
 {
     $nested = ['key' => 'value'];
     $source = $this->get_source_array($nested);
     // получаем по индексу значение (строка)
     $result = \Cloudstash\Helper\Arr::getByIndex($source, 0);
     $this->assertEquals($result, 'value', 'Wrong value for index 0');
     // получаем по индексу значение (число)
     $result = \Cloudstash\Helper\Arr::getByIndex($source, 1);
     $this->assertEquals($result, 132345, 'Wrong value for index 1');
     // получаем по индексу значение (многобайтовая строка)
     $result = \Cloudstash\Helper\Arr::getByIndex($source, 2);
     $this->assertEquals($result, 'Тест на русском языке', 'Wrong value for index 2');
     // получаем по индексу вложеный массив
     $result = \Cloudstash\Helper\Arr::getByIndex($source, 3);
     $result = \Cloudstash\Helper\Arr::similar($result, $nested);
     $this->assertTrue($result, 'Wrong nested array');
     // при отсутствующем индексе, должен возвращаться null
     $result = \Cloudstash\Helper\Arr::getByIndex($source, 99);
     $this->assertEquals($result, null, 'Wrong default value (null)');
     // при отсутствующем идексе, должено вернуться объявленное значение по умолчанию (число)
     $result = \Cloudstash\Helper\Arr::getByIndex($source, 99, 1000);
     $this->assertEquals($result, 1000, 'Wrong default value (number)');
 }