getMockBuilder(TranslatorInterface::class)->getMock(); $translator->method('trans')->willReturn('foo'); return new TitleExtension($translator); } public function testGetFunctions() { $functions = ['get_title']; $sut = $this->getSut(); $twigFunctions = $sut->getFunctions(); $this->assertCount(count($functions), $twigFunctions); $i = 0; /** @var TwigFunction $function */ foreach ($twigFunctions as $function) { $this->assertInstanceOf(TwigFunction::class, $function); $this->assertEquals($functions[$i++], $function->getName()); } } public function testGetTitle() { $sut = $this->getSut(); $this->assertEquals('Kimai – foo', $sut->generateTitle()); $this->assertEquals('sdfsdf | Kimai – foo', $sut->generateTitle('sdfsdf | ')); $this->assertEquals('Kimai ... foo', $sut->generateTitle('', ' ... ')); $this->assertEquals('Kimai | foo', $sut->generateTitle(null, ' | ')); } }