1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
<?php declare(strict_types=1);
/*
* This file is part of PHPUnit.
*
* (c) Sebastian Bergmann <sebastian@phpunit.de>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace PHPUnit\Util\TestDox;
use PHPUnit\Framework\TestCase;
/**
* @group testdox
* @small
*/
final class NamePrettifierTest extends TestCase
{
/**
* @var NamePrettifier
*/
private $namePrettifier;
protected function setUp(): void
{
$this->namePrettifier = new NamePrettifier;
}
protected function tearDown(): void
{
$this->namePrettifier = null;
}
public function testTitleHasSensibleDefaults(): void
{
$this->assertEquals('Foo', $this->namePrettifier->prettifyTestClass('FooTest'));
$this->assertEquals('Foo', $this->namePrettifier->prettifyTestClass('TestFoo'));
$this->assertEquals('Foo', $this->namePrettifier->prettifyTestClass('TestFooTest'));
$this->assertEquals('Foo (Test\Foo)', $this->namePrettifier->prettifyTestClass('Test\FooTest'));
$this->assertEquals('Foo (Tests\Foo)', $this->namePrettifier->prettifyTestClass('Tests\FooTest'));
$this->assertEquals('Unnamed Tests', $this->namePrettifier->prettifyTestClass('TestTest'));
}
public function testTestNameIsConvertedToASentence(): void
{
$this->assertEquals('This is a test', $this->namePrettifier->prettifyTestMethod('testThisIsATest'));
$this->assertEquals('This is a test', $this->namePrettifier->prettifyTestMethod('testThisIsATest2'));
$this->assertEquals('This is a test', $this->namePrettifier->prettifyTestMethod('this_is_a_test'));
$this->assertEquals('This is a test', $this->namePrettifier->prettifyTestMethod('test_this_is_a_test'));
$this->assertEquals('Foo for bar is 0', $this->namePrettifier->prettifyTestMethod('testFooForBarIs0'));
$this->assertEquals('Foo for baz is 1', $this->namePrettifier->prettifyTestMethod('testFooForBazIs1'));
$this->assertEquals('This has a 123 in its name', $this->namePrettifier->prettifyTestMethod('testThisHasA123InItsName'));
$this->assertEquals('', $this->namePrettifier->prettifyTestMethod('test'));
}
/**
* @ticket 224
*/
public function testTestNameIsNotGroupedWhenNotInSequence(): void
{
$this->assertEquals('Sets redirect header on 301', $this->namePrettifier->prettifyTestMethod('testSetsRedirectHeaderOn301'));
$this->assertEquals('Sets redirect header on 302', $this->namePrettifier->prettifyTestMethod('testSetsRedirectHeaderOn302'));
}
}
|