sfmok / rating

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Vico Rating

Solution:

How it works:

For easy testing this solution approach I recommend to set up Nix instead of docker or using local environment.

  • Set up Nix
  • Lunch nix devenv shell nix develop --impure
  • Install packages composer install
  • Run PHPUnit ./bin/phpunit

Manual Testing:

  • Run Symfony & Mysql servers using devenv shell devenv up
  • Create DB bin/console doctrine:database:create
  • Execute Migrations bin/console doctrine:migrations:migrate
  • Load Fixtures bin/console doctrine:fixtures:load -n
  • Login to get JWT
curl -X POST 'http://localhost:8000/api/login_check' \
-H 'Content-Type: application/json' \
-d '{
    "username": "johndoe@foobar.com",
    "password": "admin"
}'
  • Add Rate
curl -X POST 'http://localhost:8000/api/rate' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer JWT_TOKEN' \
  -d '{
    "satisfaction": 5,
    "communication": 5,
    "feedback": "Good Job",
    "quality_of_work": 5,
    "value_for_money": 5,
    "project_id": 1
  }'
  • Edit Rate
curl -X PUT 'http://localhost:8000/api/rate/1' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer JWT_TOKEN' \
  -d '{
    "satisfaction": 1,
    "communication": 1,
    "feedback": "Bad Job",
    "quality_of_work": 1,
    "value_for_money": 1,
    "project_id": 2
  }'

Code Quality Checks

  1. Psalm ./vendor/bin/psalm
  2. PHPCsFixer ./vendor/bin/php-cs-fixer fix -v --diff --dry-run

About


Languages

Language:PHP 96.1%Language:Nix 3.9%