From 21bfadf5d67333d48ccde7a373438c545ec5536a Mon Sep 17 00:00:00 2001 From: Meritoo Date: Sun, 11 Aug 2019 12:56:08 +0200 Subject: [PATCH] Increase Mutation Score Indicator (MSI) by removing "src/Type/DatePeriod.php:120 [M] TrueValue" mutant --- tests/Type/DatePeriodTest.php | 47 +++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/tests/Type/DatePeriodTest.php b/tests/Type/DatePeriodTest.php index 5f6f0c0..0069a3c 100644 --- a/tests/Type/DatePeriodTest.php +++ b/tests/Type/DatePeriodTest.php @@ -77,6 +77,18 @@ class DatePeriodTest extends BaseTypeTestCase self::assertEquals('', $period->getFormattedDate($format)); } + /** + * @param DatePeriod $period The date period to verify + * @param string $format Format used to format the date + * @param string $expected Expected, formatted date + * + * @dataProvider provideDatePeriodAndDateFormatUsingStartDateOnly + */ + public function testGetFormattedDateUsingStartDateOnly(DatePeriod $period, $format, $expected): void + { + self::assertEquals($expected, $period->getFormattedDate($format)); + } + /** * @param DatePeriod $period The date period to verify * @param string $format Format used to format the date @@ -144,6 +156,41 @@ class DatePeriodTest extends BaseTypeTestCase ]; } + /** + * Provides period and format of date to verify using the start date + * + * @return Generator + */ + public function provideDatePeriodAndDateFormatUsingStartDateOnly(): Generator + { + $startDate = new DateTime('2001-01-01'); + $endDate = new DateTime('2002-02-02'); + + yield[ + new DatePeriod($startDate, $endDate), + 'Y', + '2001', + ]; + + yield[ + new DatePeriod($startDate, $endDate), + 'D', + 'Mon', + ]; + + yield[ + new DatePeriod($startDate, $endDate), + 'Y-m-d', + '2001-01-01', + ]; + + yield[ + new DatePeriod($startDate, $endDate), + 'Y-m-d H:i', + '2001-01-01 00:00', + ]; + } + /** * Provides period and format of date to verify *