To improve readability, restore coding standards using ecs

This commit is contained in:
Sam Burns 2024-01-24 16:28:13 +00:00
parent b2bac6c2a9
commit ece62c0dce
13 changed files with 37 additions and 36 deletions

View File

@ -11,11 +11,14 @@ class BackstagePassItem implements GildedRoseItem
{
public const NAME = 'Backstage passes to a TAFKAL80ETC concert';
public function __construct(private Item $item) {}
public function __construct(
private Item $item
) {
}
public function ageByOneDay(): void
{
$this->item->sellIn -= 1;
--$this->item->sellIn;
$this->item->quality = min(50, $this->getNewQuality($this->item->quality, $this->item->sellIn));
}

View File

@ -11,11 +11,14 @@ class BrieItem implements GildedRoseItem
{
public const NAME = 'Aged Brie';
public function __construct(private Item $item) {}
public function __construct(
private Item $item
) {
}
public function ageByOneDay(): void
{
$this->item->sellIn -= 1;
--$this->item->sellIn;
$this->item->quality = min(50, $this->getNewQuality($this->item->quality, $this->item->sellIn));
}

View File

@ -11,11 +11,14 @@ class ConjuredItem implements GildedRoseItem
{
public const NAME = 'Conjured Mana Cake';
public function __construct(private Item $item) {}
public function __construct(
private Item $item
) {
}
public function ageByOneDay(): void
{
$this->item->sellIn -= 1;
--$this->item->sellIn;
$this->item->quality = max(0, $this->getNewQuality($this->item->quality, $this->item->sellIn));
}

View File

@ -9,11 +9,14 @@ use GildedRose\Item;
class DefaultItem implements GildedRoseItem
{
public function __construct(private Item $item) {}
public function __construct(
private Item $item
) {
}
public function ageByOneDay(): void
{
$this->item->sellIn -= 1;
--$this->item->sellIn;
$this->item->quality = max(0, $this->getNewQuality($this->item->quality, $this->item->sellIn));
}

View File

@ -11,7 +11,10 @@ class SulfurasItem implements GildedRoseItem
{
public const NAME = 'Sulfuras, Hand of Ragnaros';
public function __construct(private Item $item) {}
public function __construct(
private Item $item
) {
}
public function ageByOneDay(): void
{

View File

@ -4,11 +4,11 @@ declare(strict_types=1);
namespace GildedRose;
use GildedRose\GildedRoseItem\BrieItem;
use GildedRose\GildedRoseItem\BackstagePassItem;
use GildedRose\GildedRoseItem\BrieItem;
use GildedRose\GildedRoseItem\ConjuredItem;
use GildedRose\GildedRoseItem\SulfurasItem;
use GildedRose\GildedRoseItem\DefaultItem;
use GildedRose\GildedRoseItem\SulfurasItem;
class GildedRoseItemFactory
{

View File

@ -1,26 +1,22 @@
<?php
declare(strict_types=1);
namespace BehatTests;
use Behat\Behat\Tester\Exception\PendingException;
use Behat\Behat\Context\Context;
use Behat\Step\Given;
use Behat\Step\Then;
use Behat\Step\When;
use GildedRose\Item;
use GildedRose\GildedRose;
use GildedRose\Item;
use PHPUnit\Framework\Assert;
class ServiceLevelContext implements Context
{
private Item $item;
private GildedRose $gildedRose;
private function createItem(string $name, int $initialSellIn, int $initialQuality): void
{
$this->item = new Item($name, $initialSellIn, $initialQuality);
$this->gildedRose = new GildedRose([$this->item]);
}
private GildedRose $gildedRose;
#[Then('I should see :expectedOutput')]
public function iShouldSee(string $expectedOutput): void
@ -90,4 +86,10 @@ class ServiceLevelContext implements Context
{
$this->createItem('Conjured Mana Cake', $initialSellIn, $initialQuality);
}
private function createItem(string $name, int $initialSellIn, int $initialQuality): void
{
$this->item = new Item($name, $initialSellIn, $initialQuality);
$this->gildedRose = new GildedRose([$this->item]);
}
}

View File

@ -4,10 +4,7 @@ declare(strict_types=1);
namespace PhpUnitTests\GildedRoseItem;
use ApprovalTests\Approvals;
use GildedRose\GildedRoseItem;
use GildedRose\GildedRoseItem\BackstagePassItem;
use GildedRose\GildedRoseItemFactory;
use GildedRose\Item;
use PHPUnit\Framework\TestCase;

View File

@ -4,10 +4,7 @@ declare(strict_types=1);
namespace PhpUnitTests\GildedRoseItem;
use ApprovalTests\Approvals;
use GildedRose\GildedRoseItem;
use GildedRose\GildedRoseItem\BrieItem;
use GildedRose\GildedRoseItemFactory;
use GildedRose\Item;
use PHPUnit\Framework\TestCase;

View File

@ -4,10 +4,7 @@ declare(strict_types=1);
namespace PhpUnitTests\GildedRoseItem;
use ApprovalTests\Approvals;
use GildedRose\GildedRoseItem;
use GildedRose\GildedRoseItem\ConjuredItem;
use GildedRose\GildedRoseItemFactory;
use GildedRose\Item;
use PHPUnit\Framework\TestCase;

View File

@ -4,10 +4,7 @@ declare(strict_types=1);
namespace PhpUnitTests\GildedRoseItem;
use ApprovalTests\Approvals;
use GildedRose\GildedRoseItem;
use GildedRose\GildedRoseItem\DefaultItem;
use GildedRose\GildedRoseItemFactory;
use GildedRose\Item;
use PHPUnit\Framework\TestCase;

View File

@ -4,10 +4,7 @@ declare(strict_types=1);
namespace PhpUnitTests\GildedRoseItem;
use ApprovalTests\Approvals;
use GildedRose\GildedRoseItem;
use GildedRose\GildedRoseItem\SulfurasItem;
use GildedRose\GildedRoseItemFactory;
use GildedRose\Item;
use PHPUnit\Framework\TestCase;

View File

@ -4,10 +4,9 @@ declare(strict_types=1);
namespace PhpUnitTests;
use ApprovalTests\Approvals;
use GildedRose\GildedRoseItem;
use GildedRose\GildedRoseItem\BrieItem;
use GildedRose\GildedRoseItem\BackstagePassItem;
use GildedRose\GildedRoseItem\BrieItem;
use GildedRose\GildedRoseItem\ConjuredItem;
use GildedRose\GildedRoseItem\DefaultItem;
use GildedRose\GildedRoseItem\SulfurasItem;