Skip to content

Redominus/crafters15-php

Repository files navigation

GildedRose Kata - PHP Version

Installation

The kata uses:

  • Docker
  • Docker compose plugin
  • GNU make

Recommended:

See GitHub cloning a repository for details on how to create a local copy of this project on your computer.

git clone git@github.com:Redominus/crafters15-php.git

or

git clone https://github.com/Redominus/crafters15-php.git

Install all the dependencies using docker

cd ./crafters15-php
make install

Dependencies

Everything is handled by docker!

Folders

  • src - contains the two classes:
    • Item.php - this class should not be changed
    • GildedRose.php - this class needs to be refactored, and the new feature added
  • tests - contains the tests
  • Fixture
    • texttest_fixture.php this could be used by an ApprovalTests, or run from the command line

Fixture

To run the fixture from the php directory:

make run-fixture days=10

Change 10 to the required days.

Testing

PHPUnit is configured for testing, a composer script has been provided. To run the unit tests, from the root of the PHP project run:

make tests

Tests with Coverage Report

To run all test and generate a html coverage report run:

make test-coverage

The test-coverage report will be created in /builds, it is best viewed by opening /builds/index.html in your browser.

Code Standard

Easy Coding Standard (ECS) is configured for style and code standards, PSR-12 is used. The current code is not upto standard!

Check Code

To check code, but not fix errors:

make check-cs

Fix Code

ECS provides may code fixes, automatically, if advised to run --fix, the following script can be run:

make fix-cs

Static Analysis

PHPStan is used to run static analysis checks:

make phpstan

Happy coding!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published