<?php declare(strict_types=1); namespace GraphQL\Tests\Utils; use GraphQL\Language\Parser; use GraphQL\Language\SourceLocation; use GraphQL\Type\Definition\Type; use GraphQL\Validator\DocumentValidator; use PHPUnit\Framework\TestCase; class IsValidLiteralValueTest extends TestCase { // DESCRIBE: isValidLiteralValue /** * @see it('Returns no errors for a valid value') */ public function testReturnsNoErrorsForAValidValue() : void { self::assertEquals( [], DocumentValidator::isValidLiteralValue(Type::int(), Parser::parseValue('123')) ); } /** * @see it('Returns errors for an invalid value') */ public function testReturnsErrorsForForInvalidValue() : void { $errors = DocumentValidator::isValidLiteralValue(Type::int(), Parser::parseValue('"abc"')); self::assertCount(1, $errors); self::assertEquals('Expected type Int, found "abc".', $errors[0]->getMessage()); self::assertEquals([new SourceLocation(1, 1)], $errors[0]->getLocations()); self::assertEquals(null, $errors[0]->getPath()); } }