/**
  * Assert that required tax rate is present in "Tax Rule Information" on tax rule creation page.
  *
  * @param TaxRuleIndex $taxRuleIndex
  * @param TaxRuleNew $taxRuleNew
  * @param TaxRate $taxRate
  * @return void
  */
 public function processAssert(TaxRuleIndex $taxRuleIndex, TaxRuleNew $taxRuleNew, TaxRate $taxRate)
 {
     $taxRateCode = $taxRate->getCode();
     $taxRuleIndex->open();
     $taxRuleIndex->getGridPageActions()->addNew();
     \PHPUnit_Framework_Assert::assertTrue($taxRuleNew->getTaxRuleForm()->isTaxRateAvailable($taxRateCode), "{$taxRateCode} is not present in Tax Rates multiselect on tax rule creation page.");
 }
Example #2
0
 /**
  * Assert tax rule availability in Tax Rate grid
  *
  * @param TaxRateIndex $taxRateIndexPage
  * @param TaxRate $taxRate
  * @param TaxRate $initialTaxRate
  * @return void
  */
 public function processAssert(TaxRateIndex $taxRateIndexPage, TaxRate $taxRate, TaxRate $initialTaxRate = null)
 {
     $data = $initialTaxRate === null ? $taxRate->getData() : array_merge($initialTaxRate->getData(), $taxRate->getData());
     $filter = ['code' => $data['code'], 'tax_country_id' => $data['tax_country_id']];
     $filter['tax_postcode'] = $data['zip_is_range'] === 'No' ? $data['tax_postcode'] : $data['zip_from'] . '-' . $data['zip_to'];
     $taxRateIndexPage->open();
     \PHPUnit_Framework_Assert::assertTrue($taxRateIndexPage->getTaxRateGrid()->isRowVisible($filter), 'Tax Rate \'' . $filter['code'] . '\' is absent in Tax Rate grid.');
 }
 /**
  * Delete Tax Rate Entity test.
  *
  * @param TaxRate $taxRate
  * @return void
  */
 public function testDeleteTaxRate(TaxRate $taxRate)
 {
     // Precondition
     $taxRate->persist();
     // Steps
     $filter = ['code' => $taxRate->getCode()];
     $this->taxRateIndex->open();
     $this->taxRateIndex->getTaxRateGrid()->searchAndOpen($filter);
     $this->taxRateNew->getFormPageActions()->delete();
 }
 /**
  * Update Tax Rate Entity test.
  *
  * @param TaxRate $initialTaxRate
  * @param TaxRate $taxRate
  * @return void
  */
 public function testUpdateTaxRate(TaxRate $initialTaxRate, TaxRate $taxRate)
 {
     // Precondition
     $initialTaxRate->persist();
     // Steps
     $filter = ['code' => $initialTaxRate->getCode()];
     $this->taxRateIndex->open();
     $this->taxRateIndex->getTaxRateGrid()->searchAndOpen($filter);
     $this->taxRateNew->getTaxRateForm()->fill($taxRate);
     $this->taxRateNew->getFormPageActions()->save();
 }
 /**
  * Assert that tax rate form filled correctly
  *
  * @param TaxRateIndex $taxRateIndexPage
  * @param TaxRateNew $taxRateNewPage
  * @param TaxRate $taxRate
  * @param TaxRate $initialTaxRate
  * @return void
  */
 public function processAssert(TaxRateIndex $taxRateIndexPage, TaxRateNew $taxRateNewPage, TaxRate $taxRate, TaxRate $initialTaxRate = null)
 {
     $data = $initialTaxRate !== null ? array_merge($initialTaxRate->getData(), $taxRate->getData()) : $taxRate->getData();
     $data = $this->prepareData($data);
     $filter = ['code' => $data['code']];
     $taxRateIndexPage->open();
     $taxRateIndexPage->getTaxRateGrid()->searchAndOpen($filter);
     $formData = $taxRateNewPage->getTaxRateForm()->getData($taxRate);
     $dataDiff = $this->verifyForm($formData, $data);
     \PHPUnit_Framework_Assert::assertTrue(empty($dataDiff), 'Tax Rate form was filled incorrectly.' . "\nLog:\n" . implode(";\n", $dataDiff));
 }
 /**
  * Preparing data for verification
  *
  * @param TaxRate $taxRate
  * @param TaxRate $initialTaxRate
  * @return array
  */
 protected function prepareData(TaxRate $taxRate, TaxRate $initialTaxRate = null)
 {
     if ($initialTaxRate !== null) {
         $data = array_merge($initialTaxRate->getData(), $taxRate->getData());
         if ($taxRate->hasData('tax_country_id') && !$taxRate->hasData('tax_region_id')) {
             unset($data['tax_region_id']);
         }
     } else {
         $data = $taxRate->getData();
     }
     if ($data['zip_is_range'] === 'Yes') {
         unset($data['tax_postcode']);
     } else {
         unset($data['zip_from'], $data['zip_to']);
     }
     $data['rate'] = number_format($data['rate'], 4);
     return $data;
 }
 /**
  * Assert that tax rate not available in Tax Rate grid
  *
  * @param TaxRateIndex $taxRateIndex
  * @param TaxRate $taxRate
  * @return void
  */
 public function processAssert(TaxRateIndex $taxRateIndex, TaxRate $taxRate)
 {
     $filter = ['code' => $taxRate->getCode()];
     $taxRateIndex->open();
     \PHPUnit_Framework_Assert::assertFalse($taxRateIndex->getTaxRateGrid()->isRowVisible($filter), 'Tax Rate \'' . $filter['code'] . '\' is present in Tax Rate grid.');
 }
 /**
  * Assert that tax rate is absent in tax rule form
  *
  * @param TaxRate $taxRate
  * @param TaxRuleNew $taxRuleNew
  * @return void
  */
 public function processAssert(TaxRate $taxRate, TaxRuleNew $taxRuleNew)
 {
     $taxRuleNew->open();
     $taxRatesList = $taxRuleNew->getTaxRuleForm()->getAllTaxRates();
     \PHPUnit_Framework_Assert::assertFalse(in_array($taxRate->getCode(), $taxRatesList), 'Tax Rate \'' . $taxRate->getCode() . '\' is present in Tax Rule form.');
 }
Example #9
0
 /**
  * Prepare tax rate data.
  *
  * @param TaxRate $taxRate
  * @return array
  */
 public function prepareData(TaxRate $taxRate)
 {
     return $this->replaceMappingData($taxRate->getData());
 }