From 5c77113a8415485c0889efa92a789fa26cfc54d0 Mon Sep 17 00:00:00 2001 From: Jake Hotson Date: Tue, 24 Jun 2025 19:02:20 +0100 Subject: [PATCH] [TASK] Add tests for `getLineNumber` These correspond to the existing tests for `getLineNo` for classes that implement `Positionable`. Also correct an existing test method name to refer to `getLineNo`. --- tests/Unit/CSSList/AtRuleBlockListTest.php | 21 +++++++++++++++++ tests/Unit/CSSList/CSSListTest.php | 21 +++++++++++++++++ tests/Unit/CSSList/KeyFrameTest.php | 21 +++++++++++++++++ tests/Unit/Comment/CommentTest.php | 21 +++++++++++++++++ tests/Unit/Parsing/OutputExceptionTest.php | 21 +++++++++++++++++ tests/Unit/Parsing/SourceExceptionTest.php | 21 +++++++++++++++++ .../Parsing/UnexpectedEOFExceptionTest.php | 21 +++++++++++++++++ .../Parsing/UnexpectedTokenExceptionTest.php | 21 +++++++++++++++++ tests/Unit/Value/CSSStringTest.php | 21 +++++++++++++++++ tests/Unit/Value/CalcRuleValueListTest.php | 23 ++++++++++++++++++- tests/Unit/Value/URLTest.php | 21 +++++++++++++++++ 11 files changed, 232 insertions(+), 1 deletion(-) diff --git a/tests/Unit/CSSList/AtRuleBlockListTest.php b/tests/Unit/CSSList/AtRuleBlockListTest.php index 0252f7d3f..9c777bedd 100644 --- a/tests/Unit/CSSList/AtRuleBlockListTest.php +++ b/tests/Unit/CSSList/AtRuleBlockListTest.php @@ -126,6 +126,27 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $subject->getLineNo()); } + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new AtRuleBlockList(''); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new AtRuleBlockList('', '', $lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } + /** * @test */ diff --git a/tests/Unit/CSSList/CSSListTest.php b/tests/Unit/CSSList/CSSListTest.php index 03539533e..ef30c9a30 100644 --- a/tests/Unit/CSSList/CSSListTest.php +++ b/tests/Unit/CSSList/CSSListTest.php @@ -79,6 +79,27 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $subject->getLineNo()); } + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new ConcreteCSSList(); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new ConcreteCSSList($lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } + /** * @test */ diff --git a/tests/Unit/CSSList/KeyFrameTest.php b/tests/Unit/CSSList/KeyFrameTest.php index a3a0d43aa..15c927952 100644 --- a/tests/Unit/CSSList/KeyFrameTest.php +++ b/tests/Unit/CSSList/KeyFrameTest.php @@ -80,6 +80,27 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $subject->getLineNo()); } + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new KeyFrame(); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new KeyFrame($lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } + /** * @test */ diff --git a/tests/Unit/Comment/CommentTest.php b/tests/Unit/Comment/CommentTest.php index 2bfe670c4..0db0349a8 100644 --- a/tests/Unit/Comment/CommentTest.php +++ b/tests/Unit/Comment/CommentTest.php @@ -77,4 +77,25 @@ public function getLineNoInitiallyReturnsLineNumberPassedToConstructor(): void self::assertSame($lineNumber, $subject->getLineNo()); } + + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new Comment(); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new Comment('', $lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } } diff --git a/tests/Unit/Parsing/OutputExceptionTest.php b/tests/Unit/Parsing/OutputExceptionTest.php index d3409aa49..768982d06 100644 --- a/tests/Unit/Parsing/OutputExceptionTest.php +++ b/tests/Unit/Parsing/OutputExceptionTest.php @@ -53,6 +53,27 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $exception->getLineNo()); } + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new OutputException('foo'); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new OutputException('foo', $lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } + /** * @test */ diff --git a/tests/Unit/Parsing/SourceExceptionTest.php b/tests/Unit/Parsing/SourceExceptionTest.php index b497ff52c..ea35f67d4 100644 --- a/tests/Unit/Parsing/SourceExceptionTest.php +++ b/tests/Unit/Parsing/SourceExceptionTest.php @@ -44,6 +44,27 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $exception->getLineNo()); } + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new SourceException('foo'); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new SourceException('foo', $lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } + /** * @test */ diff --git a/tests/Unit/Parsing/UnexpectedEOFExceptionTest.php b/tests/Unit/Parsing/UnexpectedEOFExceptionTest.php index 929609efd..4c9040701 100644 --- a/tests/Unit/Parsing/UnexpectedEOFExceptionTest.php +++ b/tests/Unit/Parsing/UnexpectedEOFExceptionTest.php @@ -42,6 +42,27 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $exception->getLineNo()); } + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new UnexpectedEOFException('expected', 'found'); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new UnexpectedEOFException('expected', 'found', 'literal', $lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } + /** * @test */ diff --git a/tests/Unit/Parsing/UnexpectedTokenExceptionTest.php b/tests/Unit/Parsing/UnexpectedTokenExceptionTest.php index e5c7a64d2..6bd2a8d74 100644 --- a/tests/Unit/Parsing/UnexpectedTokenExceptionTest.php +++ b/tests/Unit/Parsing/UnexpectedTokenExceptionTest.php @@ -42,6 +42,27 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $exception->getLineNo()); } + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new UnexpectedTokenException('expected', 'found'); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new UnexpectedTokenException('expected', 'found', 'literal', $lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } + /** * @test */ diff --git a/tests/Unit/Value/CSSStringTest.php b/tests/Unit/Value/CSSStringTest.php index e88f35543..ca0bf95a4 100644 --- a/tests/Unit/Value/CSSStringTest.php +++ b/tests/Unit/Value/CSSStringTest.php @@ -81,4 +81,25 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $subject->getLineNo()); } + + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new CSSString(''); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new CSSString('', $lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } } diff --git a/tests/Unit/Value/CalcRuleValueListTest.php b/tests/Unit/Value/CalcRuleValueListTest.php index 5d73d9e93..f891d0f53 100644 --- a/tests/Unit/Value/CalcRuleValueListTest.php +++ b/tests/Unit/Value/CalcRuleValueListTest.php @@ -29,7 +29,7 @@ public function isRuleValueList(): void /** * @test */ - public function getLineNumberByDefaultReturnsZero(): void + public function getLineNoByDefaultReturnsZero(): void { $subject = new CalcRuleValueList(); @@ -48,6 +48,27 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $subject->getLineNo()); } + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new CalcRuleValueList(); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new CalcRuleValueList($lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } + /** * @test */ diff --git a/tests/Unit/Value/URLTest.php b/tests/Unit/Value/URLTest.php index 42d96e29e..cb29ee548 100644 --- a/tests/Unit/Value/URLTest.php +++ b/tests/Unit/Value/URLTest.php @@ -81,4 +81,25 @@ public function getLineNoReturnsLineNumberProvidedToConstructor(): void self::assertSame($lineNumber, $subject->getLineNo()); } + + /** + * @test + */ + public function getLineNumberByDefaultReturnsNull(): void + { + $subject = new URL(new CSSString('http://example.com')); + + self::assertNull($subject->getLineNumber()); + } + + /** + * @test + */ + public function getLineNumberReturnsLineNumberProvidedToConstructor(): void + { + $lineNumber = 42; + $subject = new URL(new CSSString('http://example.com'), $lineNumber); + + self::assertSame($lineNumber, $subject->getLineNumber()); + } }