Index: third_party/WebKit/Source/modules/payments/PaymentRequestTest.cpp |
diff --git a/third_party/WebKit/Source/modules/payments/PaymentRequestTest.cpp b/third_party/WebKit/Source/modules/payments/PaymentRequestTest.cpp |
index bc9af1a275f4aaa67d1e7b83e3573fbc680bd556..7f929d574ddc168264678388f34d10c93855a535 100644 |
--- a/third_party/WebKit/Source/modules/payments/PaymentRequestTest.cpp |
+++ b/third_party/WebKit/Source/modules/payments/PaymentRequestTest.cpp |
@@ -14,6 +14,7 @@ |
#include "modules/payments/PaymentAddress.h" |
#include "modules/payments/PaymentDetailsTestHelper.h" |
#include "modules/payments/PaymentItem.h" |
+#include "modules/payments/PaymentTestHelper.h" |
#include "modules/payments/ShippingOption.h" |
#include "platform/heap/HeapAllocator.h" |
#include "testing/gmock/include/gmock/gmock.h" |
@@ -49,7 +50,7 @@ private: |
TEST_F(PaymentRequestTest, NoExceptionWithValidData) |
{ |
- PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
} |
@@ -58,7 +59,7 @@ TEST_F(PaymentRequestTest, SecureContextRequired) |
{ |
setSecurityOrigin("http://www.example.com"); |
- PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_TRUE(getExceptionState().hadException()); |
EXPECT_EQ(SecurityError, getExceptionState().code()); |
@@ -66,7 +67,7 @@ TEST_F(PaymentRequestTest, SecureContextRequired) |
TEST_F(PaymentRequestTest, SupportedMethodListRequired) |
{ |
- PaymentRequest::create(getScriptState(), Vector<String>(), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest::create(getScriptState(), HeapVector<PaymentMethodData>(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_TRUE(getExceptionState().hadException()); |
EXPECT_EQ(V8TypeError, getExceptionState().code()); |
@@ -74,7 +75,7 @@ TEST_F(PaymentRequestTest, SupportedMethodListRequired) |
TEST_F(PaymentRequestTest, TotalRequired) |
{ |
- PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), PaymentDetails(), getExceptionState()); |
+ PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), PaymentDetails(), getExceptionState()); |
EXPECT_TRUE(getExceptionState().hadException()); |
EXPECT_EQ(V8TypeError, getExceptionState().code()); |
@@ -87,7 +88,7 @@ TEST_F(PaymentRequestTest, NullShippingOptionWhenNoOptionsAvailable) |
PaymentOptions options; |
options.setRequestShipping(true); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), details, options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), details, options, getExceptionState()); |
EXPECT_TRUE(request->shippingOption().isNull()); |
} |
@@ -100,7 +101,7 @@ TEST_F(PaymentRequestTest, NullShippingOptionWhenMultipleOptionsAvailable) |
PaymentOptions options; |
options.setRequestShipping(true); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), details, options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), details, options, getExceptionState()); |
EXPECT_TRUE(request->shippingOption().isNull()); |
} |
@@ -113,7 +114,7 @@ TEST_F(PaymentRequestTest, SelectSingleAvailableShippingOptionWhenShippingReques |
PaymentOptions options; |
options.setRequestShipping(true); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), details, options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), details, options, getExceptionState()); |
EXPECT_EQ("standard", request->shippingOption()); |
} |
@@ -124,7 +125,7 @@ TEST_F(PaymentRequestTest, DontSelectSingleAvailableShippingOptionByDefault) |
details.setTotal(buildPaymentItemForTest()); |
details.setShippingOptions(HeapVector<ShippingOption>(1, buildShippingOptionForTest(PaymentTestDataId, PaymentTestOverwriteValue, "standard"))); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), details, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), details, getExceptionState()); |
EXPECT_TRUE(request->shippingOption().isNull()); |
} |
@@ -137,14 +138,14 @@ TEST_F(PaymentRequestTest, DontSelectSingleAvailableShippingOptionWhenShippingNo |
PaymentOptions options; |
options.setRequestShipping(false); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), details, options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), details, options, getExceptionState()); |
EXPECT_TRUE(request->shippingOption().isNull()); |
} |
TEST_F(PaymentRequestTest, AbortWithoutShowShouldThrow) |
{ |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->abort(getExceptionState()); |
@@ -212,7 +213,7 @@ private: |
TEST_F(PaymentRequestTest, CanAbortAfterShow) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::noExpectations(getScriptState())); |
@@ -224,7 +225,7 @@ TEST_F(PaymentRequestTest, CanAbortAfterShow) |
TEST_F(PaymentRequestTest, RejectShowPromiseOnInvalidShippingAddress) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::expectCall(getScriptState())); |
@@ -237,7 +238,7 @@ TEST_F(PaymentRequestTest, RejectShowPromiseWithRequestShippingTrueAndEmptyShipp |
ScriptState::Scope scope(getScriptState()); |
PaymentOptions options; |
options.setRequestShipping(true); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::New(); |
@@ -251,7 +252,7 @@ TEST_F(PaymentRequestTest, RejectShowPromiseWithRequestShippingTrueAndInvalidShi |
ScriptState::Scope scope(getScriptState()); |
PaymentOptions options; |
options.setRequestShipping(true); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::New(); |
response->shipping_address = mojom::blink::PaymentAddress::New(); |
@@ -266,7 +267,7 @@ TEST_F(PaymentRequestTest, RejectShowPromiseWithRequestShippingFalseAndShippingA |
ScriptState::Scope scope(getScriptState()); |
PaymentOptions options; |
options.setRequestShipping(false); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
mojom::blink::PaymentAddressPtr shippingAddress = mojom::blink::PaymentAddress::New(); |
shippingAddress->region_code = "US"; |
@@ -283,7 +284,7 @@ TEST_F(PaymentRequestTest, ResolveShowPromiseWithRequestShippingTrueAndValidShip |
ScriptState::Scope scope(getScriptState()); |
PaymentOptions options; |
options.setRequestShipping(true); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::New(); |
response->shipping_address = mojom::blink::PaymentAddress::New(); |
@@ -307,7 +308,7 @@ TEST_F(PaymentRequestTest, ResolveShowPromiseWithRequestShippingFalseAndEmptyShi |
ScriptState::Scope scope(getScriptState()); |
PaymentOptions options; |
options.setRequestShipping(false); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
ScriptValue outValue; |
@@ -323,7 +324,7 @@ TEST_F(PaymentRequestTest, ResolveShowPromiseWithRequestShippingFalseAndEmptyShi |
TEST_F(PaymentRequestTest, OnShippingOptionChange) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::expectNoCall(getScriptState())); |
@@ -334,7 +335,7 @@ TEST_F(PaymentRequestTest, OnShippingOptionChange) |
TEST_F(PaymentRequestTest, CannotCallShowTwice) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()); |
@@ -344,7 +345,7 @@ TEST_F(PaymentRequestTest, CannotCallShowTwice) |
TEST_F(PaymentRequestTest, CannotCallCompleteTwice) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()); |
static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse(mojom::blink::PaymentResponse::New()); |
@@ -356,7 +357,7 @@ TEST_F(PaymentRequestTest, CannotCallCompleteTwice) |
TEST_F(PaymentRequestTest, RejectShowPromiseOnError) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::expectCall(getScriptState())); |
@@ -367,7 +368,7 @@ TEST_F(PaymentRequestTest, RejectShowPromiseOnError) |
TEST_F(PaymentRequestTest, RejectCompletePromiseOnError) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()); |
static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse(mojom::blink::PaymentResponse::New()); |
@@ -380,7 +381,7 @@ TEST_F(PaymentRequestTest, RejectCompletePromiseOnError) |
TEST_F(PaymentRequestTest, ResolvePromiseOnComplete) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()); |
static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse(mojom::blink::PaymentResponse::New()); |
@@ -393,7 +394,7 @@ TEST_F(PaymentRequestTest, ResolvePromiseOnComplete) |
TEST_F(PaymentRequestTest, RejectShowPromiseOnUpdateDetailsFailure) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::expectCall(getScriptState())); |
@@ -404,7 +405,7 @@ TEST_F(PaymentRequestTest, RejectShowPromiseOnUpdateDetailsFailure) |
TEST_F(PaymentRequestTest, RejectCompletePromiseOnUpdateDetailsFailure) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectCall(getScriptState()), MockFunction::expectNoCall(getScriptState())); |
static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse(mojom::blink::PaymentResponse::New()); |
@@ -417,7 +418,7 @@ TEST_F(PaymentRequestTest, RejectCompletePromiseOnUpdateDetailsFailure) |
TEST_F(PaymentRequestTest, IgnoreUpdatePaymentDetailsAfterShowPromiseResolved) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectCall(getScriptState()), MockFunction::expectNoCall(getScriptState())); |
static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse(mojom::blink::PaymentResponse::New()); |
@@ -428,7 +429,7 @@ TEST_F(PaymentRequestTest, IgnoreUpdatePaymentDetailsAfterShowPromiseResolved) |
TEST_F(PaymentRequestTest, RejectShowPromiseOnNonPaymentDetailsUpdate) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::expectCall(getScriptState())); |
@@ -439,7 +440,7 @@ TEST_F(PaymentRequestTest, RejectShowPromiseOnNonPaymentDetailsUpdate) |
TEST_F(PaymentRequestTest, RejectShowPromiseOnInvalidPaymentDetailsUpdate) |
{ |
ScriptState::Scope scope(getScriptState()); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::expectCall(getScriptState())); |
@@ -455,7 +456,7 @@ TEST_F(PaymentRequestTest, ClearShippingOptionOnPaymentDetailsUpdateWithoutShipp |
details.setTotal(buildPaymentItemForTest()); |
PaymentOptions options; |
options.setRequestShipping(true); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), details, options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), details, options, getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
EXPECT_TRUE(request->shippingOption().isNull()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::expectNoCall(getScriptState())); |
@@ -477,7 +478,7 @@ TEST_F(PaymentRequestTest, ClearShippingOptionOnPaymentDetailsUpdateWithMultiple |
ScriptState::Scope scope(getScriptState()); |
PaymentOptions options; |
options.setRequestShipping(true); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::expectNoCall(getScriptState())); |
String detail = "{\"total\": {\"label\": \"Total\", \"amount\": {\"currency\": \"USD\", \"value\": \"5.00\"}}," |
@@ -495,7 +496,7 @@ TEST_F(PaymentRequestTest, UseTheSingleShippingOptionFromPaymentDetailsUpdate) |
ScriptState::Scope scope(getScriptState()); |
PaymentOptions options; |
options.setRequestShipping(true); |
- PaymentRequest* request = PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), options, getExceptionState()); |
+ PaymentRequest* request = PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, getExceptionState()); |
EXPECT_FALSE(getExceptionState().hadException()); |
request->show(getScriptState()).then(MockFunction::expectNoCall(getScriptState()), MockFunction::expectNoCall(getScriptState())); |
String detail = "{\"total\": {\"label\": \"Total\", \"amount\": {\"currency\": \"USD\", \"value\": \"5.00\"}}," |