Eav.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. /**
  3. * Helper for EAV functionality in integration tests.
  4. *
  5. * Copyright © Magento, Inc. All rights reserved.
  6. * See COPYING.txt for license details.
  7. */
  8. namespace Magento\TestFramework\Helper;
  9. class Eav
  10. {
  11. /**
  12. * Set increment id prefix in entity model.
  13. *
  14. * @param string $entityType
  15. * @param string $prefix
  16. */
  17. public static function setIncrementIdPrefix($entityType, $prefix)
  18. {
  19. $website = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
  20. \Magento\Store\Model\StoreManagerInterface::class
  21. )->getWebsite();
  22. $storeId = $website->getDefaultStore()->getId();
  23. $entityTypeModel = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
  24. \Magento\Eav\Model\Entity\Type::class
  25. )->loadByCode(
  26. $entityType
  27. );
  28. /** @var \Magento\Eav\Model\Entity\Store $entityStore */
  29. $entityStore = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
  30. \Magento\Eav\Model\Entity\Store::class
  31. )->loadByEntityStore(
  32. $entityTypeModel->getId(),
  33. $storeId
  34. );
  35. $entityStore->setEntityTypeId($entityTypeModel->getId());
  36. $entityStore->setStoreId($storeId);
  37. $entityStore->setIncrementPrefix($prefix);
  38. $entityStore->save();
  39. }
  40. }