buildFilter(0) ); self::assertInstanceOf( IndexesFilter::class, new JSONPathToken(TokenType::Indexes, [])->buildFilter(0) ); self::assertInstanceOf( QueryMatchFilter::class, new JSONPathToken(TokenType::QueryMatch, '')->buildFilter(0) ); self::assertInstanceOf( QueryResultFilter::class, new JSONPathToken(TokenType::QueryResult, '')->buildFilter(0) ); self::assertInstanceOf( RecursiveFilter::class, new JSONPathToken(TokenType::Recursive, null)->buildFilter(0) ); self::assertInstanceOf( SliceFilter::class, new JSONPathToken(TokenType::Slice, ['start' => 0, 'end' => 0, 'step' => 1])->buildFilter(0) ); } public function testConstructorSetsProperties(): void { $token = new JSONPathToken(TokenType::Index, 'value'); self::assertSame(TokenType::Index, $token->type); self::assertSame('value', $token->value); } }