Passed
Pull Request — master (#69)
by Chris
17:32 queued 08:49
created

TicketMetadataTest::provideAvailableOn()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 4
nc 1
nop 0
dl 0
loc 6
rs 9.4285
c 0
b 0
f 0
1
<?php
2
3
namespace ConferenceTools\Tickets\Domain\ValueObject;
4
5
use ConferenceTools\Tickets\Domain\Service\Configuration;
6
use ConferenceTools\Tickets\Domain\ValueObject\DiscountType\Percentage;
7
8
class TicketMetadataTest extends \PHPUnit\Framework\TestCase
9
{
10
    /**
11
     * @dataProvider provideAvailableOn
12
     * @param $test
13
     * @param $expected
14
     */
15
    public function testAvailableOn($test, $expected)
16
    {
17
        $ticketType = new TicketType('z', Price::fromNetCost(new Money(0, 'gbp'), new TaxRate(20)), 'Z');
18
19
        $sut = TicketMetadata::createWithoutDates($ticketType, false);
20
        $this->assertEquals($expected, $sut->isAvailableOn($test));
21
    }
22
23
    public function provideAvailableOn()
24
    {
25
        return [
26
            [new \DateTime(), true],
27
            [(new \DateTime())->sub(new \DateInterval('P2D')), false],
28
            [(new \DateTime())->add(new \DateInterval('P2D')), false],
29
        ];
30
    }
31
}