/** * 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."); }
/** * 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.'); }
/** * Prepare tax rate data. * * @param TaxRate $taxRate * @return array */ public function prepareData(TaxRate $taxRate) { return $this->replaceMappingData($taxRate->getData()); }