Skip to content

Instantly share code, notes, and snippets.

View pcelta's full-sized avatar
🇦🇺

Pedro Ribeiro pcelta

🇦🇺
  • Hello Molly
  • Sydney
View GitHub Profile
<?php
namespace Westeros\Territory;
use Westeros\Family;
use Westeros\Person;
use Westeros\Sword;
use Westeros\Territory as TerritoryOfWesteros;
use InvalidArgumentException;
@pcelta
pcelta / FactoryTest.php
Last active September 30, 2017 12:10
FactoryTest complete
<?php
namespace Tests\Unit\Westeros\Territory;
use Westeros\Territory\Factory as TerritoryFactory;
use PHPUnit\Framework\TestCase;
use Westeros\Family;
use Westeros\Person;
use Westeros\Sword;
use Westeros\Territory as TerritoryOfWesteros;
if (!in_array($territoryName, self::$knownTerritories)) {
throw new InvalidArgumentException('Unknown Territory');
}
@pcelta
pcelta / FactoryTest_v1_InvalidTerritory.php
Created September 30, 2017 11:34
FactoryTest_v1_InvalidTerritory.php
<?php
namespace Tests\Unit\Westeros\Territory;
use Westeros\Territory\Factory as TerritoryFactory;
use PHPUnit\Framework\TestCase;
class FactoryTest extends TestCase
{
/**
@pcelta
pcelta / FactoryTest_DataProvider.php
Last active September 30, 2017 12:10
Factory Test class using a data provider with meaninful descriptions
<?php
namespace Tests\Unit\Westeros\Territory;
use Westeros\Territory\Factory as TerritoryFactory;
use PHPUnit\Framework\TestCase;
use Westeros\Territory as TerritoryOfWesteros;
class FactoryTest extends TestCase
{
@pcelta
pcelta / FactoryTest_DataProvider_Failing.php
Created September 30, 2017 11:59
Factory Test using data provider with a failing scenario on purpose
<?php
namespace Tests\Unit\Westeros\Territory;
use Westeros\Territory\Factory as TerritoryFactory;
use PHPUnit\Framework\TestCase;
use Westeros\Territory as TerritoryOfWesteros;
class FactoryTest extends TestCase
{
@pcelta
pcelta / clean_code.md
Created July 25, 2019 02:50 — forked from wojteklu/clean_code.md
Summary of 'Clean code' by Robert C. Martin

Code is clean if it can be understood easily – by everyone on the team. Clean code can be read and enhanced by a developer other than its original author. With understandability comes readability, changeability, extensibility and maintainability.


General rules

  1. Follow standard conventions.
  2. Keep it simple stupid. Simpler is always better. Reduce complexity as much as possible.
  3. Boy scout rule. Leave the campground cleaner than you found it.
  4. Always find root cause. Always look for the root cause of a problem.

Design rules