33 lines
		
	
	
		
			878 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			33 lines
		
	
	
		
			878 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| 
								 | 
							
								<?php
							 | 
						||
| 
								 | 
							
								namespace JmesPath\Tests;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								use JmesPath\Env;
							 | 
						||
| 
								 | 
							
								use JmesPath\CompilerRuntime;
							 | 
						||
| 
								 | 
							
								use PHPUnit\Framework\TestCase;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								class EnvTest extends TestCase
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    public function testSearchesInput()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $data = ['foo' => 123];
							 | 
						||
| 
								 | 
							
								        $this->assertEquals(123, Env::search('foo', $data));
							 | 
						||
| 
								 | 
							
								        $this->assertEquals(123, Env::search('foo', $data));
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    public function testSearchesWithFunction()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $data = ['foo' => 123];
							 | 
						||
| 
								 | 
							
								        $this->assertEquals(123, \JmesPath\search('foo', $data));
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    public function testCleansCompileDir()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $dir = sys_get_temp_dir();
							 | 
						||
| 
								 | 
							
								        $runtime = new CompilerRuntime($dir);
							 | 
						||
| 
								 | 
							
								        $runtime('@ | @ | @[0][0][0]', []);
							 | 
						||
| 
								 | 
							
								        $this->assertNotEmpty(glob($dir . '/jmespath_*.php'));
							 | 
						||
| 
								 | 
							
								        $this->assertGreaterThan(0, Env::cleanCompileDir());
							 | 
						||
| 
								 | 
							
								        $this->assertEmpty(glob($dir . '/jmespath_*.php'));
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 |