public function setUp() { $this->di = new Container(new Factory()); $this->di->set('tests/elasticsearch:client', $this->di->lazy(function () { return ClientBuilder::create()->build(); })); $this->di->setter['Mosiyash\\Elasticsearch\\DocumentAbstract']['setDi'] = $this->di; $this->di->setter['Mosiyash\\Elasticsearch\\DocumentRepositoryAbstract']['setDi'] = $this->di; $this->di->set('tests/documents:custom', $this->di->newFactory('Mosiyash\\Elasticsearch\\Tests\\CustomDocument')); $this->di->set('tests/documents:custom_repository', $this->di->lazyNew('Mosiyash\\Elasticsearch\\Tests\\CustomDocumentRepository')); $this->checkElasticsearchIsRunned(); $this->deleteElasticsearchIndex(); $this->createElasticsearchIndex(); }