@@ -115,4 +115,28 @@ public function testEmptyDiffProducesEmptyOutput(string $from, string $to): void
115115
116116 $ this ->assertEmpty ($ output );
117117 }
118+
119+ public function testCustomContextLinesCanBeUsed (): void
120+ {
121+ $ from = "line1 \nline2 \nline3 \nline4 \nline5 \nline6 \nline7 \nline8 \nline9 \nline10 \n" ;
122+ $ to = "line1 \nline2 \nline3 \nline4 \nLINE5 \nline6 \nline7 \nline8 \nline9 \nline10 \n" ;
123+
124+ $ differ3 = new Differ (new UnifiedDiffOutputBuilder ('' , false , 3 ));
125+ $ differ1 = new Differ (new UnifiedDiffOutputBuilder ('' , false , 1 ));
126+ $ differ5 = new Differ (new UnifiedDiffOutputBuilder ('' , false , 5 ));
127+
128+ $ diff3 = $ differ3 ->diff ($ from , $ to );
129+ $ diff1 = $ differ1 ->diff ($ from , $ to );
130+ $ diff5 = $ differ5 ->diff ($ from , $ to );
131+
132+ $ this ->assertStringContainsString (' line2 ' , $ diff3 );
133+ $ this ->assertStringNotContainsString (' line1 ' , $ diff3 );
134+
135+ $ this ->assertStringContainsString (' line4 ' , $ diff1 );
136+ $ this ->assertStringNotContainsString (' line3 ' , $ diff1 );
137+ $ this ->assertStringNotContainsString (' line7 ' , $ diff1 );
138+
139+ $ this ->assertStringContainsString (' line1 ' , $ diff5 );
140+ $ this ->assertStringContainsString (' line9 ' , $ diff5 );
141+ }
118142}
0 commit comments