Skip to content

Commit fbfa656

Browse files
OskarStarkfabpot
andauthored
Use data providers (#267)
* Use data providers * - * - * Fix CS --------- Co-authored-by: Fabien Potencier <[email protected]>
1 parent d39a790 commit fbfa656

File tree

2 files changed

+30
-16
lines changed

2 files changed

+30
-16
lines changed

tests/Service/LabelNameExtractorTest.php

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,23 @@
1010

1111
class LabelNameExtractorTest extends TestCase
1212
{
13-
public function testExtractLabels()
13+
/**
14+
* @dataProvider provideLabels
15+
*/
16+
public function testExtractLabels(array $expected, string $title)
1417
{
15-
$api = new StaticLabelApi();
16-
$extractor = new LabelNameExtractor($api, new NullLogger());
18+
$extractor = new LabelNameExtractor(new StaticLabelApi(), new NullLogger());
1719
$repo = new Repository('carsonbot-playground', 'symfony');
1820

19-
$this->assertSame(['Messenger'], $extractor->extractLabels('[Messenger] Foobar', $repo));
20-
$this->assertSame(['Messenger'], $extractor->extractLabels('[messenger] Foobar', $repo));
21-
$this->assertSame(['Messenger', 'Mime'], $extractor->extractLabels('[Messenger][Mime] Foobar', $repo));
22-
$this->assertSame(['Messenger', 'Mime'], $extractor->extractLabels('[Messenger] [Mime] Foobar', $repo));
23-
$this->assertSame(['Messenger', 'Mime'], $extractor->extractLabels('[Messenger] Foobar [Mime] ', $repo));
21+
$this->assertSame($expected, $extractor->extractLabels($title, $repo));
22+
}
23+
24+
public static function provideLabels(): iterable
25+
{
26+
yield [['Messenger'], '[Messenger] Foobar'];
27+
yield [['Messenger'], '[messenger] Foobar'];
28+
yield [['Messenger', 'Mime'], '[Messenger][Mime] Foobar'];
29+
yield [['Messenger', 'Mime'], '[Messenger] [Mime] Foobar'];
30+
yield [['Messenger', 'Mime'], '[Messenger] Foobar [Mime]'];
2431
}
2532
}

tests/Service/WipParserTest.php

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,22 @@
99

1010
class WipParserTest extends TestCase
1111
{
12-
public function testMatchTitle()
12+
/**
13+
* @dataProvider titlesProvider
14+
*/
15+
public function testMatchTitle(bool $expected, string $title)
1316
{
14-
$this->assertTrue(WipParser::matchTitle('[WIP] foo'));
15-
$this->assertTrue(WipParser::matchTitle('WIP: bar'));
16-
$this->assertTrue(WipParser::matchTitle('(WIP) xas'));
17-
$this->assertTrue(WipParser::matchTitle('[WIP]foo'));
18-
$this->assertTrue(WipParser::matchTitle('[wip] foo'));
17+
$this->assertSame($expected, WipParser::matchTitle($title));
18+
}
1919

20-
$this->assertFalse(WipParser::matchTitle('Bar [WIP] foo'));
21-
$this->assertFalse(WipParser::matchTitle('FOOWIP: foo'));
20+
public static function titlesProvider(): iterable
21+
{
22+
yield [true, '[WIP] foo'];
23+
yield [true, 'WIP: bar'];
24+
yield [true, '(WIP) xas'];
25+
yield [true, '[WIP]foo'];
26+
yield [true, '[wip] foo'];
27+
yield [false, 'Bar [WIP] foo'];
28+
yield [false, 'FOOWIP: foo'];
2229
}
2330
}

0 commit comments

Comments
 (0)