Example #1
0
 public function setUp()
 {
     $fs = new LocalDriver(__DIR__);
     $this->cache = $fs->getDirectory('/cache');
     $this->templates = $fs->getDirectory('/data');
     $this->compiler = new Compiler();
 }
Example #2
0
 public function __construct(Ioc $ioc, Directory $cache)
 {
     $this->ioc = $ioc;
     $preprocessor = $ioc->make(NomTransformer::class);
     $compiler = $ioc->make(Compiler::class);
     $pipeline = $ioc->make(Pipeline::class, [$cache, $compiler, [$preprocessor]]);
     $filesystem = new LocalDriver(__DIR__ . '/../templates');
     $templates = $filesystem->getDirectory('/');
     $hasher = new Sha1WeakHasher();
     $this->tailor = $ioc->make(Tailor::class, [$templates, $cache, $pipeline, $hasher]);
 }
Example #3
0
use BapCat\Phi\Phi;
use BapCat\Request\RequestFromGlobals;
use BapCat\Router\Router;
use BapCat\Router\RouteNotFoundException;
use BapCat\Values\HttpMethod;
use BapCat\Values\Text;
require __DIR__ . '/../vendor/autoload.php';
$ioc = Phi::instance();
use BapCat\Persist\Drivers\Local\LocalDriver;
use BapCat\Remodel\EntityDefinition;
use BapCat\Remodel\Registry;
use BapCat\Remodel\RemodelConnection;
use Illuminate\Database\Query\Grammars\MySqlGrammar;
use Illuminate\Database\Query\Processors\MySqlProcessor;
// Grab filesystem directories
$persist = new LocalDriver(__DIR__ . '/..');
$cache = $persist->getDirectory('/cache');
$registry = new Registry($ioc, $cache);
$connection = new RemodelConnection(new PDO('mysql:host=localhost;dbname=test', 'root', ''), new MySqlGrammar(), new MySqlProcessor());
use BapCat\Values\Email;
use BapCat\CoolThing\User;
use BapCat\CoolThing\UserId;
use BapCat\CoolThing\UserGateway;
use BapCat\CoolThing\UserRepository;
use BapCat\CoolThing\UserNotFoundException;
$def = new EntityDefinition(User::class);
$def->required('email', Email::class);
$def->optional('name', Text::class);
$def->timestamps();
$registry->register($def);
$user_repo = new UserRepository(Phi::instance(), new UserGateway($connection));