Diff
Modified: branches/safari-603.1.30.0-branch/LayoutTests/ChangeLog (213389 => 213390)
--- branches/safari-603.1.30.0-branch/LayoutTests/ChangeLog 2017-03-03 22:35:23 UTC (rev 213389)
+++ branches/safari-603.1.30.0-branch/LayoutTests/ChangeLog 2017-03-03 22:35:27 UTC (rev 213390)
@@ -1,5 +1,21 @@
2017-03-03 Matthew Hanson <matthew_han...@apple.com>
+ Merge r213385. rdar://problem/30838985
+
+ 2017-03-03 Sam Weinig <s...@webkit.org>
+
+ REGRESSION (r209760): Apple Pay doesn't work on casper.com, shopspring.com, maybe other sites
+ <rdar://problem/30313445>
+ https://bugs.webkit.org/show_bug.cgi?id=169149
+
+ Reviewed by Simon Fraser.
+
+ * http/tests/ssl/applepay/ApplePaySession-expected.txt:
+ * http/tests/ssl/applepay/ApplePaySession.html:
+ Update test for relaxed ApplePayShippingMethod sequence requirements.
+
+2017-03-03 Matthew Hanson <matthew_han...@apple.com>
+
Rollout r213374. rdar://problem/30773140
2017-03-03 Matthew Hanson <matthew_han...@apple.com>
Modified: branches/safari-603.1.30.0-branch/LayoutTests/http/tests/ssl/applepay/ApplePaySession-expected.txt (213389 => 213390)
--- branches/safari-603.1.30.0-branch/LayoutTests/http/tests/ssl/applepay/ApplePaySession-expected.txt 2017-03-03 22:35:23 UTC (rev 213389)
+++ branches/safari-603.1.30.0-branch/LayoutTests/http/tests/ssl/applepay/ApplePaySession-expected.txt 2017-03-03 22:35:27 UTC (rev 213390)
@@ -349,6 +349,9 @@
SETUP: request = validRequest(); request.shippingMethods = undefined;
PASS new ApplePaySession(2, request) did not throw exception.
+SETUP: request = validRequest(); request.shippingMethods = [];
+PASS new ApplePaySession(2, request) did not throw exception.
+
SETUP: request = validRequest(); request.shippingMethods = '';
PASS new ApplePaySession(2, request) threw exception TypeError: Value is not a sequence.
@@ -364,9 +367,6 @@
SETUP: request = validRequest(); request.shippingMethods = { };
PASS new ApplePaySession(2, request) threw exception TypeError: Type error.
-SETUP: request = validRequest(); request.shippingMethods = [];
-PASS new ApplePaySession(2, request) threw exception TypeError: At least one shipping method must be provided..
-
SETUP: request = validRequest(); request.shippingMethods = [{ }];
PASS new ApplePaySession(2, request) threw exception TypeError: Member ApplePayShippingMethod.amount is required and must be an instance of DOMString.
Modified: branches/safari-603.1.30.0-branch/LayoutTests/http/tests/ssl/applepay/ApplePaySession.html (213389 => 213390)
--- branches/safari-603.1.30.0-branch/LayoutTests/http/tests/ssl/applepay/ApplePaySession.html 2017-03-03 22:35:23 UTC (rev 213389)
+++ branches/safari-603.1.30.0-branch/LayoutTests/http/tests/ssl/applepay/ApplePaySession.html 2017-03-03 22:35:27 UTC (rev 213390)
@@ -188,12 +188,12 @@
debug("Testing PaymentRequest.shippingMethods")
debug("");
logAndShouldNotThrow("request = validRequest(); request.shippingMethods = undefined;", "new ApplePaySession(2, request)")
+ logAndShouldNotThrow("request = validRequest(); request.shippingMethods = [];", "new ApplePaySession(2, request)")
logAndShouldThrow("request = validRequest(); request.shippingMethods = '';", "new ApplePaySession(2, request)")
logAndShouldThrow("request = validRequest(); request.shippingMethods = 'invalid';", "new ApplePaySession(2, request)")
logAndShouldThrow("request = validRequest(); request.shippingMethods = null;", "new ApplePaySession(2, request)")
logAndShouldThrow("request = validRequest(); request.shippingMethods = 7;", "new ApplePaySession(2, request)")
logAndShouldThrow("request = validRequest(); request.shippingMethods = { };", "new ApplePaySession(2, request)")
- logAndShouldThrow("request = validRequest(); request.shippingMethods = [];", "new ApplePaySession(2, request)")
logAndShouldThrow("request = validRequest(); request.shippingMethods = [{ }];", "new ApplePaySession(2, request)")
logAndShouldThrow("request = validRequest(); request.shippingMethods = [{ amount: '', }];", "new ApplePaySession(2, request)")
logAndShouldThrow("request = validRequest(); request.shippingMethods = [{ amount: '', detail: '' }];", "new ApplePaySession(2, request)")
Modified: branches/safari-603.1.30.0-branch/Source/WebCore/ChangeLog (213389 => 213390)
--- branches/safari-603.1.30.0-branch/Source/WebCore/ChangeLog 2017-03-03 22:35:23 UTC (rev 213389)
+++ branches/safari-603.1.30.0-branch/Source/WebCore/ChangeLog 2017-03-03 22:35:27 UTC (rev 213390)
@@ -1,5 +1,23 @@
2017-03-03 Matthew Hanson <matthew_han...@apple.com>
+ Merge r213385. rdar://problem/30838985
+
+ 2017-03-03 Sam Weinig <s...@webkit.org>
+
+ REGRESSION (r209760): Apple Pay doesn't work on casper.com, shopspring.com, maybe other sites
+ <rdar://problem/30313445>
+ https://bugs.webkit.org/show_bug.cgi?id=169149
+
+ Reviewed by Simon Fraser.
+
+ Relax restriction that the ApplePayShippingMethod sequence must not be empty. This
+ was incorrect.
+
+ * Modules/applepay/ApplePaySession.cpp:
+ (WebCore::convertAndValidate):
+
+2017-03-03 Matthew Hanson <matthew_han...@apple.com>
+
Rollout r213374. rdar://problem/30773140
2017-03-03 Matthew Hanson <matthew_han...@apple.com>
Modified: branches/safari-603.1.30.0-branch/Source/WebCore/Modules/applepay/ApplePaySession.cpp (213389 => 213390)
--- branches/safari-603.1.30.0-branch/Source/WebCore/Modules/applepay/ApplePaySession.cpp 2017-03-03 22:35:23 UTC (rev 213389)
+++ branches/safari-603.1.30.0-branch/Source/WebCore/Modules/applepay/ApplePaySession.cpp 2017-03-03 22:35:27 UTC (rev 213390)
@@ -294,9 +294,6 @@
static ExceptionOr<Vector<PaymentRequest::ShippingMethod>> convertAndValidate(Vector<ApplePayShippingMethod>&& shippingMethods)
{
- if (shippingMethods.isEmpty())
- return Exception { TypeError, "At least one shipping method must be provided." };
-
Vector<PaymentRequest::ShippingMethod> result;
result.reserveInitialCapacity(shippingMethods.size());