public function testClearCache()
 {
     $kommerce = new DoctrineHelper(new Doctrine\Common\Cache\ArrayCache());
     $kommerce->setup(['driver' => 'pdo_sqlite', 'memory' => true]);
     $cacheDriver = $kommerce->getCacheDriver();
     $id = 'test-id';
     $data = 'test-data';
     $cacheDriver->save($id, $data);
     $this->assertSame($data, $cacheDriver->fetch($id));
     $kommerce->clearCache();
     $this->assertSame(false, $cacheDriver->fetch($id));
 }
<?php

use Doctrine\ORM\Tools\Console\ConsoleRunner;
use inklabs\kommerce\Lib\DoctrineHelper;
require_once __DIR__ . '/../vendor/autoload.php';
$doctrineHelper = new DoctrineHelper(new Doctrine\Common\Cache\ArrayCache());
$doctrineHelper->setup(['driver' => 'pdo_sqlite', 'path' => __DIR__ . '/../storage/db.sqlite']);
$entityManager = $doctrineHelper->getEntityManager();
// Fix MySQL enum
$platform = $entityManager->getConnection()->getDatabasePlatform();
$platform->registerDoctrineTypeMapping('enum', 'string');
return ConsoleRunner::createHelperSet($entityManager);
 public function setCountLogger($enableDisplay = false)
 {
     $this->countSQLLogger = new CountSQLLogger($enableDisplay);
     $this->doctrineHelper->setSqlLogger($this->countSQLLogger);
 }
 private function getEntityManager()
 {
     static $entityManager = null;
     if ($entityManager === null) {
         $cacheDriver = $this->getCacheDriver();
         $doctrineHelper = new DoctrineHelper($cacheDriver);
         $doctrineHelper->setup(['driver' => 'pdo_sqlite', 'path' => storage_path() . '/db.sqlite']);
         $doctrineHelper->addSqliteFunctions();
         $entityManager = $doctrineHelper->getEntityManager();
     }
     return $entityManager;
 }