/** * Test save action. */ public function testSyncStorageSaveAction() { $shopIds = [1, 2, 3]; $values = [[ActionTypes::CREATE, 'product', 14, new DateTime('now -1 hour'), $shopIds], [ActionTypes::UPDATE, 'product', 14, new DateTime('now -1 hour +1 minute'), $shopIds], [ActionTypes::DELETE, 'product', 14, new DateTime('now -1 hour +2 minutes'), $shopIds]]; $this->storageManager->expects($this->exactly(3))->method('addRecord')->will($this->returnValueMap($values)); foreach ($values as $set) { $this->service->save($set[0], $set[1], $set[2], $set[3], $set[4]); } $this->setExpectedException('InvalidArgumentException', 'Invalid parameters specified.'); $this->service->save('b', 'product', 14, new DateTime('now -1 hour +3 minutes')); }