diff --git a/php/phpunit.xml b/php/phpunit.xml new file mode 100644 index 00000000..4c259412 --- /dev/null +++ b/php/phpunit.xml @@ -0,0 +1,15 @@ + + + + + + test + + + diff --git a/php/src/gilded_rose.php b/php/src/gilded_rose.php new file mode 100644 index 00000000..5636901a --- /dev/null +++ b/php/src/gilded_rose.php @@ -0,0 +1,79 @@ +items = $items; + } + + function update_quality() { + foreach ($this->items as $item) { + if ($item->name != 'Aged Brie' and $item->name != 'Backstage passes to a TAFKAL80ETC concert') { + if ($item->quality > 0) { + if ($item->name != 'Sulfuras, Hand of Ragnaros') { + $item->quality = $item->quality - 1; + } + } + } else { + if ($item->quality < 50) { + $item->quality = $item->quality + 1; + if ($item->name == 'Backstage passes to a TAFKAL80ETC concert') { + if ($item->sell_in < 11) { + if ($item->quality < 50) { + $item->quality = $item->quality + 1; + } + } + if ($item->sell_in < 6) { + if ($item->quality < 50) { + $item->quality = $item->quality + 1; + } + } + } + } + } + + if ($item->name != 'Sulfuras, Hand of Ragnaros') { + $item->sell_in = $item->sell_in - 1; + } + + if ($item->sell_in < 0) { + if ($item->name != 'Aged Brie') { + if ($item->name != 'Backstage passes to a TAFKAL80ETC concert') { + if ($item->quality > 0) { + if ($item->name != 'Sulfuras, Hand of Ragnaros') { + $item->quality = $item->quality - 1; + } + } + } else { + $item->quality = $item->quality - $item->quality; + } + } else { + if ($item->quality < 50) { + $item->quality = $item->quality + 1; + } + } + } + } + } +} + +class Item { + + public $name; + public $sell_in; + public $quality; + + function __construct($name, $sell_in, $quality) { + $this->name = $name; + $this->sell_in = $sell_in; + $this->quality = $quality; + } + + public function __toString() { + return "{$this->name}, {$this->sell_in}, {$this->quality}"; + } + +} + diff --git a/php/test/bootstrap.php b/php/test/bootstrap.php new file mode 100644 index 00000000..57eddb69 --- /dev/null +++ b/php/test/bootstrap.php @@ -0,0 +1,2 @@ +update_quality(); + $this->assertEquals("fixme", $items[0]->name); + } + +}