1<?php 2 3/** 4 * @covers DifferenceEngineSlotDiffRenderer 5 */ 6class DifferenceEngineSlotDiffRendererTest extends MediaWikiIntegrationTestCase { 7 8 public function testGetDiff() { 9 $differenceEngine = new CustomDifferenceEngine(); 10 $slotDiffRenderer = new DifferenceEngineSlotDiffRenderer( $differenceEngine ); 11 $oldContent = ContentHandler::makeContent( 'xxx', null, CONTENT_MODEL_TEXT ); 12 $newContent = ContentHandler::makeContent( 'yyy', null, CONTENT_MODEL_TEXT ); 13 14 $diff = $slotDiffRenderer->getDiff( $oldContent, $newContent ); 15 $this->assertEquals( 'xxx|yyy', $diff ); 16 17 $diff = $slotDiffRenderer->getDiff( null, $newContent ); 18 $this->assertEquals( '|yyy', $diff ); 19 20 $diff = $slotDiffRenderer->getDiff( $oldContent, null ); 21 $this->assertEquals( 'xxx|', $diff ); 22 } 23 24 public function testAddModules() { 25 $output = $this->getMockBuilder( OutputPage::class ) 26 ->disableOriginalConstructor() 27 ->onlyMethods( [ 'addModules' ] ) 28 ->getMock(); 29 $output->expects( $this->once() ) 30 ->method( 'addModules' ) 31 ->with( 'foo' ); 32 $differenceEngine = new CustomDifferenceEngine(); 33 $slotDiffRenderer = new DifferenceEngineSlotDiffRenderer( $differenceEngine ); 34 $slotDiffRenderer->addModules( $output ); 35 } 36} 37