[Payment Request] Enable hasEnrolledInstrument by default.

Intent to Ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/6rZ7kBLwmhg/lqEpsHLiDgAJ

Bug: 915907
Change-Id: I08825b981d93016b1d8d3647ee76cb4ccea4173a
Reviewed-on: https://chromium-review.googlesource.com/c/1492488
Commit-Queue: Danyao Wang <danyao@chromium.org>
Reviewed-by: Rouslan Solomakhin <rouslan@chromium.org>
Reviewed-by: Philip Jägenstedt <foolip@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#636494}
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
index c68c5a8..4296c21 100644
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -334,7 +334,7 @@
 
 // Whether PaymentRequest exposes hasEnrolledInstrument API.
 const base::Feature kPaymentRequestHasEnrolledInstrument = {
-    "PaymentRequestHasEnrolledInstrument", base::FEATURE_DISABLED_BY_DEFAULT};
+    "PaymentRequestHasEnrolledInstrument", base::FEATURE_ENABLED_BY_DEFAULT};
 
 // Whether PDF files should be rendered in diffent processes based on origin.
 const base::Feature kPdfIsolation = {"PdfIsolation",
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
index e881d26..af75346 100644
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1044,6 +1044,7 @@
     },
     {
       name: "PaymentRequestHasEnrolledInstrument",
+      status: "stable",
     },
     {
       name: "PaymentRequestMerchantValidationEvent",
diff --git a/third_party/blink/web_tests/external/wpt/payment-request/payment-request-hasenrolledinstrument-method-protection.https-expected.txt b/third_party/blink/web_tests/external/wpt/payment-request/payment-request-hasenrolledinstrument-method-protection.https-expected.txt
index 6718c1b..20a6f53 100644
--- a/third_party/blink/web_tests/external/wpt/payment-request/payment-request-hasenrolledinstrument-method-protection.https-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/payment-request/payment-request-hasenrolledinstrument-method-protection.https-expected.txt
@@ -1,4 +1,4 @@
 This is a testharness.js-based test.
-FAIL Optionally, at the user agent's discretion, return a promise rejected with a "NotAllowedError" DOMException. assert_equals: If it throws, then it must be a NotAllowedError. expected "NotAllowedError" but got "TypeError"
+FAIL Optionally, at the user agent's discretion, return a promise rejected with a "NotAllowedError" DOMException. assert_equals: If it throws, then it must be a NotAllowedError. expected "NotAllowedError" but got "UnknownError"
 Harness: the test ran to completion.
 
diff --git a/third_party/blink/web_tests/external/wpt/payment-request/payment-request-hasenrolledinstrument-method.https-expected.txt b/third_party/blink/web_tests/external/wpt/payment-request/payment-request-hasenrolledinstrument-method.https-expected.txt
index 92e9c382..fe7f167 100644
--- a/third_party/blink/web_tests/external/wpt/payment-request/payment-request-hasenrolledinstrument-method.https-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/payment-request/payment-request-hasenrolledinstrument-method.https-expected.txt
@@ -1,7 +1,7 @@
 This is a testharness.js-based test.
 Harness Error. harness_status.status = 1 , harness_status.message = Already called show() once
-FAIL hasEnrolledInstrument() resolves to false for unsupported payment methods. promise_test: Unhandled rejection with value: object "TypeError: request.hasEnrolledInstrument is not a function"
-FAIL If request.[[state]] is "interactive", then return a promise rejected with an "InvalidStateError" DOMException. promise_test: Unhandled rejection with value: object "TypeError: request.hasEnrolledInstrument is not a function"
+FAIL hasEnrolledInstrument() resolves to false for unsupported payment methods. promise_test: Unhandled rejection with value: object "UnknownError: Request failed"
+FAIL If request.[[state]] is "interactive", then return a promise rejected with an "InvalidStateError" DOMException. promise_test: Unhandled rejection with value: object "InvalidStateError: No show() or retry() in progress, so nothing to abort"
 FAIL If request.[[state]] is "closed", then return a promise rejected with an "InvalidStateError" DOMException. promise_test: Unhandled rejection with value: object "InvalidStateError: No show() or retry() in progress, so nothing to abort"
 Harness: the test ran to completion.
 
diff --git a/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-expected.txt b/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-expected.txt
index 77532a9..c8f0635 100644
--- a/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-expected.txt
+++ b/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-expected.txt
@@ -4500,6 +4500,7 @@
     method abort
     method canMakePayment
     method constructor
+    method hasEnrolledInstrument
     method show
     setter onshippingaddresschange
     setter onshippingoptionchange
diff --git a/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt b/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
index 9d52969..a6f6c834 100644
--- a/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
+++ b/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
@@ -5217,6 +5217,7 @@
     method abort
     method canMakePayment
     method constructor
+    method hasEnrolledInstrument
     method show
     setter onpaymentmethodchange
     setter onshippingaddresschange