Пример #1
0
 /**
  * Delete Sales Rule Entity.
  *
  * @param SalesRule $salesRule
  * @return void
  */
 public function testDeleteSalesRule(SalesRule $salesRule)
 {
     // Preconditions
     $salesRule->persist();
     // Steps
     $this->promoQuoteIndex->open();
     $this->promoQuoteIndex->getPromoQuoteGrid()->searchAndOpen(['name' => $salesRule->getName()]);
     $this->promoQuoteEdit->getFormPageActions()->delete();
 }
 /**
  * Assert that displayed sales rule data on edit page(backend) equals passed from fixture.
  *
  * @param PromoQuoteIndex $promoQuoteIndex
  * @param PromoQuoteEdit $promoQuoteEdit
  * @param SalesRule $salesRule
  * @param SalesRule $salesRuleOrigin
  * @return void
  */
 public function processAssert(PromoQuoteIndex $promoQuoteIndex, PromoQuoteEdit $promoQuoteEdit, SalesRule $salesRule, SalesRule $salesRuleOrigin = null)
 {
     $filter = ['name' => $salesRule->hasData('name') ? $salesRule->getName() : $salesRuleOrigin->getName()];
     $promoQuoteIndex->open();
     $promoQuoteIndex->getPromoQuoteGrid()->searchAndOpen($filter);
     $formData = $promoQuoteEdit->getSalesRuleForm()->getData();
     $fixtureData = $salesRuleOrigin != null ? array_merge($salesRuleOrigin->getData(), $salesRule->getData()) : $salesRule->getData();
     $dataDiff = $this->verify($fixtureData, $formData);
     \PHPUnit_Framework_Assert::assertTrue(empty($dataDiff), 'Sales rule data on edit page(backend) not equals to passed from fixture.' . "\nFailed values:\n " . implode(";\n ", $dataDiff));
 }
 /**
  * Create Sales Rule Entity.
  *
  * @param SalesRule $salesRule
  * @return void
  */
 public function testCreateSalesRule(SalesRule $salesRule)
 {
     // Preconditions
     $this->salesRuleName = $salesRule->getName();
     // Steps
     $this->promoQuoteNew->open();
     $this->promoQuoteNew->getSalesRuleForm()->fill($salesRule);
     $this->promoQuoteNew->getFormPageActions()->save();
 }
 /**
  * Update Sales Rule Entity.
  *
  * @param SalesRule $salesRule
  * @param SalesRule $salesRuleOrigin
  * @return void
  */
 public function testUpdateSalesRule(SalesRule $salesRule, SalesRule $salesRuleOrigin)
 {
     // Preconditions
     $salesRuleOrigin->persist();
     $filter = ['name' => $salesRuleOrigin->getName()];
     $this->salesRuleName = $salesRule->hasData('name') ? $salesRule->getName() : $salesRuleOrigin->getName();
     // Steps
     $this->promoQuoteIndex->open();
     $this->promoQuoteIndex->getPromoQuoteGrid()->searchAndOpen($filter);
     $this->promoQuoteEdit->getSalesRuleForm()->fill($salesRule);
     $this->promoQuoteEdit->getFormPageActions()->save();
 }
 /**
  * Assert that sales rule is not present in cart price rules grid.
  *
  * @param PromoQuoteIndex $promoQuoteIndex
  * @param SalesRule $salesRule
  * @return void
  */
 public function processAssert(PromoQuoteIndex $promoQuoteIndex, SalesRule $salesRule)
 {
     \PHPUnit_Framework_Assert::assertFalse($promoQuoteIndex->getPromoQuoteGrid()->isRowVisible(['name' => $salesRule->getName()]), 'Sales rule \'' . $salesRule->getName() . '\' is present in cart price rules grid.');
 }
 /**
  * Create Sales Price Rule.
  *
  * @param SalesRule $salesRule
  * @param CatalogProductSimple $productForSalesRule1
  * @param CatalogProductSimple $productForSalesRule2
  * @param Customer $customer
  * @param string $conditionEntity
  */
 public function testCreateSalesRule(SalesRule $salesRule, CatalogProductSimple $productForSalesRule1, CatalogProductSimple $productForSalesRule2 = null, Customer $customer = null, $conditionEntity = null)
 {
     $replace = null;
     $this->salesRuleName = $salesRule->getName();
     // Prepare data
     if ($customer !== null) {
         $customer->persist();
     }
     $productForSalesRule1->persist();
     if ($productForSalesRule2 !== null) {
         $productForSalesRule2->persist();
         if ($conditionEntity !== null) {
             $replace = $this->prepareCondition($productForSalesRule2, $conditionEntity);
         }
     }
     // Steps
     $this->promoQuoteNew->open();
     $this->promoQuoteNew->getSalesRuleForm()->fill($salesRule, null, $replace);
     $this->promoQuoteNew->getFormPageActions()->save();
 }