44 lines
		
	
	
		
			987 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			44 lines
		
	
	
		
			987 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| 
								 | 
							
								<?php
							 | 
						||
| 
								 | 
							
								namespace JmesPath\Tests;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								use JmesPath\SyntaxErrorException;
							 | 
						||
| 
								 | 
							
								use PHPUnit\Framework\TestCase;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * @covers JmesPath\SyntaxErrorException
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								class SyntaxErrorExceptionTest extends TestCase
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    public function testCreatesWithNoArray()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $e = new SyntaxErrorException(
							 | 
						||
| 
								 | 
							
								            'Found comma',
							 | 
						||
| 
								 | 
							
								            ['type' => 'comma', 'pos' => 3, 'value' => ','],
							 | 
						||
| 
								 | 
							
								            'abc,def'
							 | 
						||
| 
								 | 
							
								        );
							 | 
						||
| 
								 | 
							
								        $expected = <<<EOT
							 | 
						||
| 
								 | 
							
								Syntax error at character 3
							 | 
						||
| 
								 | 
							
								abc,def
							 | 
						||
| 
								 | 
							
								   ^
							 | 
						||
| 
								 | 
							
								Found comma
							 | 
						||
| 
								 | 
							
								EOT;
							 | 
						||
| 
								 | 
							
								        $this->assertContains($expected, $e->getMessage());
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    public function testCreatesWithArray()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $e = new SyntaxErrorException(
							 | 
						||
| 
								 | 
							
								            ['dot' => true, 'eof' => true],
							 | 
						||
| 
								 | 
							
								            ['type' => 'comma', 'pos' => 3, 'value' => ','],
							 | 
						||
| 
								 | 
							
								            'abc,def'
							 | 
						||
| 
								 | 
							
								        );
							 | 
						||
| 
								 | 
							
								        $expected = <<<EOT
							 | 
						||
| 
								 | 
							
								Syntax error at character 3
							 | 
						||
| 
								 | 
							
								abc,def
							 | 
						||
| 
								 | 
							
								   ^
							 | 
						||
| 
								 | 
							
								Expected one of the following: dot, eof; found comma ","
							 | 
						||
| 
								 | 
							
								EOT;
							 | 
						||
| 
								 | 
							
								        $this->assertContains($expected, $e->getMessage());
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 |