Skip to content

Commit ebc27ff

Browse files
committed
MTA-3987: Added use_default_price field to CatalogProductSimple fixture
- Added use_default_price field to CatalogProductSimple fixture - Added use_default_price field to product form - Modified LiselectstoreElement to work with context - Modified date data source to work with magento timezone - Added magento_timezone environment variable to phpunit.xml.dist - Added price scope setting to the config data repository
1 parent 4815341 commit ebc27ff

File tree

7 files changed

+81
-2
lines changed

7 files changed

+81
-2
lines changed

dev/tests/functional/lib/Magento/Mtf/Client/Element/LiselectstoreElement.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ public function setValue($value)
7474
}
7575
$optionSelector = './/' . implode($this->optionMaskFollowing, $optionSelector) . '/a';
7676

77-
$option = $this->driver->find($optionSelector, Locator::SELECTOR_XPATH);
77+
$option = $this->context->find($optionSelector, Locator::SELECTOR_XPATH);
7878
if (!$option->isVisible()) {
7979
throw new \Exception('[' . implode('/', $value) . '] option is not visible in store switcher.');
8080
}

dev/tests/functional/phpunit.xml.dist

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
<env name="basedir" value="var/log" />
4040
<env name="credentials_file_path" value="./credentials.xml.dist" />
4141
<env name="mage_mode" value="developer" />
42+
<env name="magento_timezone" value="America/Los_Angeles" />
4243
</php>
4344

4445
</phpunit>

dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/Source/Date.php

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,17 @@
1313
*
1414
* Data keys:
1515
* - pattern (Format a local time/date with delta, e.g. 'm/d/Y -3 days' = current day - 3 days)
16+
* - apply_timezone (true if it is needed to apply timezone)
1617
*/
1718
class Date extends DataSource
1819
{
20+
/**
21+
* Indicates whether timezone setting is applied or not.
22+
*
23+
* @var bool
24+
*/
25+
private $isTimezoneApplied;
26+
1927
/**
2028
* @constructor
2129
* @param array $params
@@ -35,7 +43,16 @@ public function __construct(array $params, $data = [])
3543
if (!$timestamp) {
3644
throw new \Exception('Invalid date format for "' . $this->params['attribute_code'] . '" field');
3745
}
38-
$date = date(str_replace($delta, '', $data['pattern']), $timestamp);
46+
if (isset($data['apply_timezone']) && $data['apply_timezone'] === true) {
47+
$date = new \DateTime();
48+
$date->setTimestamp($timestamp);
49+
$date->setTimezone(new \DateTimeZone($_ENV['magento_timezone']));
50+
$date = $date->format(str_replace($delta, '', $data['pattern']));
51+
$this->isTimezoneApplied = true;
52+
} else {
53+
$date = date(str_replace($delta, '', $data['pattern']), $timestamp);
54+
$this->isTimezoneApplied = false;
55+
}
3956
if (!$date) {
4057
$date = date('m/d/Y');
4158
}
@@ -44,4 +61,14 @@ public function __construct(array $params, $data = [])
4461
$this->data = $data;
4562
}
4663
}
64+
65+
/**
66+
* Verifies if timezone setting has been already applied.
67+
*
68+
* @return bool
69+
*/
70+
public function isTimezoneApplied()
71+
{
72+
return $this->isTimezoneApplied;
73+
}
4774
}

dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/ProductForm.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,10 @@
5757
<selector>[name="use_default[name]"]</selector>
5858
<input>checkbox</input>
5959
</use_default_name>
60+
<use_default_price>
61+
<selector>[name="use_default[price]"]</selector>
62+
<input>checkbox</input>
63+
</use_default_price>
6064
</fields>
6165
</product-details>
6266
<advanced-pricing>

dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
<field name="msrp_display_actual_price_type" is_required="0" />
4949
<field name="name" is_required="1" group="product-details" />
5050
<field name="use_default_name" group="product-details" />
51+
<field name="use_default_price" group="product-details" />
5152
<field name="old_id" is_required="0" />
5253
<field name="options_container" is_required="0" />
5354
<field name="page_layout" is_required="0" />

dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductSimple.xml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1799,5 +1799,35 @@
17991799
<item name="dataset" xsi:type="string">simple_order_default</item>
18001800
</field>
18011801
</dataset>
1802+
1803+
<dataset name="product_with_additional_website">
1804+
<field name="sku" xsi:type="string">simple_product_with_category_%isolation%</field>
1805+
<field name="name" xsi:type="string">Simple product with category %isolation%</field>
1806+
<field name="quantity_and_stock_status" xsi:type="array">
1807+
<item name="qty" xsi:type="string">777</item>
1808+
<item name="is_in_stock" xsi:type="string">In Stock</item>
1809+
</field>
1810+
<field name="product_has_weight" xsi:type="string">This item has weight</field>
1811+
<field name="weight" xsi:type="string">1</field>
1812+
<field name="attribute_set_id" xsi:type="array">
1813+
<item name="dataset" xsi:type="string">default</item>
1814+
</field>
1815+
<field name="price" xsi:type="array">
1816+
<item name="value" xsi:type="string">10</item>
1817+
<item name="dataset" xsi:type="string" />
1818+
</field>
1819+
<field name="category_ids" xsi:type="array">
1820+
<item name="dataset" xsi:type="string">default_subcategory</item>
1821+
</field>
1822+
<field name="website_ids" xsi:type="array">
1823+
<item name="0" xsi:type="array">
1824+
<item name="dataset" xsi:type="string">default</item>
1825+
</item>
1826+
<item name="1" xsi:type="array">
1827+
<item name="dataset" xsi:type="string">custom_store</item>
1828+
</item>
1829+
</field>
1830+
<field name="url_key" xsi:type="string">simple-product-%isolation%</field>
1831+
</dataset>
18021832
</repository>
18031833
</config>

dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/ConfigData.xml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,5 +45,21 @@
4545
<item name="inherit" xsi:type="number">1</item>
4646
</field>
4747
</dataset>
48+
<dataset name="price_scope_website">
49+
<field name="catalog/price/scope" xsi:type="array">
50+
<item name="scope" xsi:type="string">default</item>
51+
<item name="scope_id" xsi:type="number">0</item>
52+
<item name="label" xsi:type="string">Website</item>
53+
<item name="value" xsi:type="number">1</item>
54+
</field>
55+
</dataset>
56+
<dataset name="price_scope_website_rollback">
57+
<field name="catalog/price/scope" xsi:type="array">
58+
<item name="scope" xsi:type="string">default</item>
59+
<item name="scope_id" xsi:type="number">0</item>
60+
<item name="label" xsi:type="string">Global</item>
61+
<item name="value" xsi:type="number">0</item>
62+
</field>
63+
</dataset>
4864
</repository>
4965
</config>

0 commit comments

Comments
 (0)