Bug 1482332 [wpt PR 12396] - test PaymentValidationErrors' `shippingAddress` member, a=testonly
authorMarcos Cáceres <marcos@marcosc.com>
Wed, 15 Aug 2018 10:03:30 +0000
changeset 486868 faf93e2708549068e4286fad80edb2869d30ce9e
parent 486867 2b2c564b2e13accaa97fff7dd8264904c641bc77
child 486869 7b473418d3841f6c6436e1bfd736111c0b721637
push id9719
push userffxbld-merge
push dateFri, 24 Aug 2018 17:49:46 +0000
treeherdermozilla-beta@719ec98fba77 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstestonly
bugs1482332, 12396
milestone63.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1482332 [wpt PR 12396] - test PaymentValidationErrors' `shippingAddress` member, a=testonly Automatic update from web-platform-teststest PaymentValidationErrors' `shippingAddress` member (#12396) -- wpt-commits: c2a1f9a2744da4f2c8e0367da76de623d9407944 wpt-pr: 12396
testing/web-platform/meta/MANIFEST.json
testing/web-platform/tests/payment-request/PaymentValidationErrors/retry-shows-shippingAddress-member-manual.https.html
--- a/testing/web-platform/meta/MANIFEST.json
+++ b/testing/web-platform/meta/MANIFEST.json
@@ -13244,16 +13244,22 @@
     ]
    ],
    "payment-request/PaymentRequestUpdateEvent/updateWith-state-checks-manual.https.html": [
     [
      "/payment-request/PaymentRequestUpdateEvent/updateWith-state-checks-manual.https.html",
      {}
     ]
    ],
+   "payment-request/PaymentValidationErrors/retry-shows-shippingAddress-member-manual.https.html": [
+    [
+     "/payment-request/PaymentValidationErrors/retry-shows-shippingAddress-member-manual.https.html",
+     {}
+    ]
+   ],
    "payment-request/algorithms-manual.https.html": [
     [
      "/payment-request/algorithms-manual.https.html",
      {}
     ]
    ],
    "payment-request/change-shipping-option-manual.https.html": [
     [
@@ -616246,16 +616252,20 @@
   "payment-request/PaymentRequestUpdateEvent/updateWith-state-checks-manual.https.html": [
    "4d4ef73949dd1dd271521c5005ca4e93108ab844",
    "manual"
   ],
   "payment-request/PaymentRequestUpdateEvent/updatewith-method.https.html": [
    "adacdf3f06d1c1adb50a65585b64441c5e00de63",
    "testharness"
   ],
+  "payment-request/PaymentValidationErrors/retry-shows-shippingAddress-member-manual.https.html": [
+   "cdc8d353a9b458b123dd2598ed34553a30dc4f23",
+   "manual"
+  ],
   "payment-request/algorithms-manual.https.html": [
    "5494353c6bceb4ed0d388852bd7f426e5715186d",
    "manual"
   ],
   "payment-request/allowpaymentrequest/active-document-cross-origin.https.sub.html": [
    "48f6d9066328d6de4a26ab42c69a34d822ece2e8",
    "testharness"
   ],
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/payment-request/PaymentValidationErrors/retry-shows-shippingAddress-member-manual.https.html
@@ -0,0 +1,108 @@
+<!doctype html>
+<meta charset="utf8">
+<link rel="help" href="https://w3c.github.io/payment-request/#dom-paymentvalidationerrors-shippingaddress">
+<title>
+  PaymentValidationErrors' `shippingAddress` member (AddressErrors)
+</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="../payment-response/helpers.js"></script>
+<script>
+function retryShowsShippingAddressMember(button, error) {
+  button.disabled = true;
+  promise_test(async t => {
+    const options = {
+      requestShipping: true,
+    }
+    const { response } = await getPaymentRequestResponse(options);
+    await response.retry({ shippingAddress: error });
+    await response.complete("success");
+  }, button.textContent.trim());
+}
+</script>
+<h2>
+  Manual Test for PaymentValidationErrors' `shippingAddress` member - Please run in order!
+</h2>
+<p>
+  Click on each button in sequence from top to bottom without refreshing the page.
+  Each button will bring up the Payment Request UI window.
+</p>
+<p>
+  When presented with the payment sheet, use any card and select to "Pay".
+  You will be asked to retry the payment and an error should be shown somewhere
+  in the UI. The expected error string is described in each individual test.
+  If you see the error, hit "Pay" again. If you don't see the error,
+  abort the payment request by hitting "esc" - which means that particular test
+  has failed.
+</p>
+<ol>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { addressLine: 'ADDRESSLINE ERROR' });">
+      The payment sheet shows "ADDRESSLINE ERROR" for the shipping address' addressLine.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { city: 'CITY ERROR' });">
+      The payment sheet shows "CITY ERROR" for the shipping address' city.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { country: 'COUNTRY ERROR' });">
+      The payment sheet shows "COUNTRY ERROR" for the shipping address' country.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { dependentLocality: 'DEPENDENTLOCALITY ERROR' });">
+      The payment sheet shows "DEPENDENTLOCALITY ERROR" for the shipping address' dependentLocality.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { languageCode: 'LANGUAGECODE ERROR' });">
+      The payment sheet shows "LANGUAGECODE ERROR" for the shipping address' languageCode.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { organization: 'ORGANIZATION ERROR' });">
+      The payment sheet shows "ORGANIZATION ERROR" for the shipping address' organization.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { phone: 'PHONE ERROR' });">
+      The payment sheet shows "PHONE ERROR" for the shipping address' phone.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { postalCode: 'POSTALCODE ERROR' });">
+      The payment sheet shows "POSTALCODE ERROR" for the shipping address' postal code.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { recipient: 'RECIPIENT ERROR' });">
+      The payment sheet shows "RECIPIENT ERROR" for the shipping address' recipient.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { region: 'REGION ERROR' });">
+      The payment sheet shows "REGION ERROR" for the shipping address' region.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { regionCode: 'REGIONCODE ERROR' });">
+      The payment sheet shows "REGIONCODE ERROR" for the shipping address' region code.
+    </button>
+  </li>
+  <li>
+    <button onclick="retryShowsShippingAddressMember(this, { sortingCode: 'SORTINGCODE ERROR' });">
+      The payment sheet shows "SORTINGCODE ERROR" for the shipping address' sorting code.
+    </button>
+  </li>
+  <li>
+    <button onclick="done();">
+      Done!
+    </button>
+  </li>
+</ol>
+<small>
+  If you find a buggy test, please <a href="https://github.com/w3c/web-platform-tests/issues">file a bug</a>
+  and tag one of the <a href="https://github.com/w3c/web-platform-tests/blob/master/payment-request/OWNERS">owners</a>.
+</small>