protected function setUp() { $this->productMock = $this->getMockBuilder(ProductModel::class)->disableOriginalConstructor()->getMock(); $this->subjectMock = $this->getMockBuilder(ProductResourceModel::class)->disableOriginalConstructor()->getMock(); $connection = $this->getMockBuilder(AdapterInterface::class)->disableOriginalConstructor()->getMockForAbstractClass(); $this->subjectMock->method('getConnection')->willReturn($connection); $this->indexerMock = $this->getMockBuilder(IndexerInterface::class)->disableOriginalConstructor()->setMethods(['getId', 'getState', '__wakeup'])->getMockForAbstractClass(); $this->indexerRegistryMock = $this->getMockBuilder(IndexerRegistry::class)->disableOriginalConstructor()->setMethods(['get'])->getMock(); $this->proceed = function () { return $this->subjectMock; }; $this->model = (new ObjectManager($this))->getObject(Product::class, ['indexerRegistry' => $this->indexerRegistryMock]); }