From eb5aff13e6f18f2cee76af6381836dd28f41a47d Mon Sep 17 00:00:00 2001 From: Ruud Kamphuis Date: Fri, 6 Sep 2024 13:54:31 +0200 Subject: [PATCH] Add test cases for quote aware array/object keys See #251 --- tests/PHPStan/Printer/PrinterTest.php | 30 +++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/tests/PHPStan/Printer/PrinterTest.php b/tests/PHPStan/Printer/PrinterTest.php index 24a28236..d9eab2d0 100644 --- a/tests/PHPStan/Printer/PrinterTest.php +++ b/tests/PHPStan/Printer/PrinterTest.php @@ -2010,6 +2010,36 @@ public function dataPrintType(): iterable ), 'self::TYPES[int]', ]; + yield [ + new ArrayShapeNode([ + new ArrayShapeItemNode( + new IdentifierTypeNode('name'), + false, + new IdentifierTypeNode('string') + ), + new ArrayShapeItemNode( + new QuoteAwareConstExprStringNode('Full Name', QuoteAwareConstExprStringNode::SINGLE_QUOTED), + false, + new IdentifierTypeNode('string') + ), + ]), + "array{name: string, 'Full Name': string}", + ]; + yield [ + new ObjectShapeNode([ + new ObjectShapeItemNode( + new IdentifierTypeNode('name'), + false, + new IdentifierTypeNode('string') + ), + new ObjectShapeItemNode( + new QuoteAwareConstExprStringNode('Full Name', QuoteAwareConstExprStringNode::SINGLE_QUOTED), + false, + new IdentifierTypeNode('string') + ), + ]), + "object{name: string, 'Full Name': string}", + ]; } /**