12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- <?php
- namespace think\tests;
- use org\bovigo\vfs\vfsStream;
- use PHPUnit\Framework\TestCase;
- use think\Config;
- class ConfigTest extends TestCase
- {
- public function testLoad()
- {
- $root = vfsStream::setup();
- $file = vfsStream::newFile('test.php')->setContent("<?php return ['key1'=> 'value1','key2'=>'value2'];");
- $root->addChild($file);
- $config = new Config();
- $config->load($file->url(), 'test');
- $this->assertEquals('value1', $config->get('test.key1'));
- $this->assertEquals('value2', $config->get('test.key2'));
- $this->assertSame(['key1' => 'value1', 'key2' => 'value2'], $config->get('test'));
- }
- public function testSetAndGet()
- {
- $config = new Config();
- $config->set([
- 'key1' => 'value1',
- 'key2' => [
- 'key3' => 'value3',
- ],
- ], 'test');
- $this->assertTrue($config->has('test.key1'));
- $this->assertEquals('value1', $config->get('test.key1'));
- $this->assertEquals('value3', $config->get('test.key2.key3'));
- $this->assertEquals(['key3' => 'value3'], $config->get('test.key2'));
- $this->assertFalse($config->has('test.key3'));
- $this->assertEquals('none', $config->get('test.key3', 'none'));
- }
- }
|