public function setUp() { $fs = new LocalDriver(__DIR__); $this->cache = $fs->getDirectory('/cache'); $this->templates = $fs->getDirectory('/data'); $this->compiler = new Compiler(); }
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]); }
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)); Phi::instance()->bind(UserRepository::class, $user_repo);