Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(699)

Unified Diff: third_party/WebKit/Source/modules/payments/PaymentRequestTest.cpp

Issue 2020883002: PaymentRequest: Introduce PaymentMethodData. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 94f175ea319f79a5065063d496a7000d801f0a07..aee234ed0ace57c9e83886bb7cf32fdf5e0b08ee 100644
--- a/third_party/WebKit/Source/modules/payments/PaymentRequestTest.cpp
+++ b/third_party/WebKit/Source/modules/payments/PaymentRequestTest.cpp
@@ -45,9 +45,16 @@ private:
TrackExceptionState m_exceptionState;
};
+HeapVector<PaymentMethodData> buildPaymentMethodDataForTest()
+{
+ HeapVector<PaymentMethodData> methodData(1, PaymentMethodData());
+ methodData[0].setSupportedMethods(Vector<String>(1, "food"));
+ return methodData;
+}
+
TEST_F(PaymentRequestTest, NoExceptionWithValidData)
{
- PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), buildPaymentDetailsForTest(), getExceptionState());
+ PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), buildPaymentDetailsForTest(), getExceptionState());
EXPECT_FALSE(getExceptionState().hadException());
}
@@ -56,7 +63,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());
@@ -64,7 +71,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());
@@ -72,7 +79,7 @@ TEST_F(PaymentRequestTest, SupportedMethodListRequired)
TEST_F(PaymentRequestTest, ItemListRequired)
{
- PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), PaymentDetails(), getExceptionState());
+ PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), PaymentDetails(), getExceptionState());
EXPECT_TRUE(getExceptionState().hadException());
EXPECT_EQ(V8TypeError, getExceptionState().code());
@@ -83,7 +90,7 @@ TEST_F(PaymentRequestTest, ItemListIsNotEmpty)
PaymentDetails details;
details.setItems(HeapVector<PaymentItem>());
- PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), details, getExceptionState());
+ PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), details, getExceptionState());
EXPECT_TRUE(getExceptionState().hadException());
EXPECT_EQ(V8TypeError, getExceptionState().code());
@@ -94,7 +101,7 @@ TEST_F(PaymentRequestTest, AtLeastOnePaymentDetailsItemRequired)
PaymentDetails details;
details.setShippingOptions(HeapVector<ShippingOption>(2, buildShippingOptionForTest()));
- PaymentRequest::create(getScriptState(), Vector<String>(1, "foo"), details, getExceptionState());
+ PaymentRequest::create(getScriptState(), buildPaymentMethodDataForTest(), details, getExceptionState());
EXPECT_TRUE(getExceptionState().hadException());
EXPECT_EQ(V8TypeError, getExceptionState().code());
@@ -107,7 +114,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());
}
@@ -120,7 +127,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());
}
@@ -133,7 +140,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());
}
@@ -144,7 +151,7 @@ TEST_F(PaymentRequestTest, DontSelectSingleAvailableShippingOptionByDefault)
details.setItems(HeapVector<PaymentItem>(1, 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());
}
@@ -157,14 +164,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());
@@ -206,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()));
@@ -218,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()));
@@ -229,7 +236,7 @@ TEST_F(PaymentRequestTest, RejectShowPromiseOnInvalidShippingAddress)
TEST_F(PaymentRequestTest, RejectShowPromiseOnInvalidShippingAddressInResponse)
{
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());
mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::New();
response->shipping_address = mojom::blink::ShippingAddress::New();
@@ -242,7 +249,7 @@ TEST_F(PaymentRequestTest, RejectShowPromiseOnInvalidShippingAddressInResponse)
TEST_F(PaymentRequestTest, DontRejectShowPromiseForValidShippingAddress)
{
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());
mojom::blink::ShippingAddressPtr shippingAddress = mojom::blink::ShippingAddress::New();
shippingAddress->region_code = "US";
@@ -257,7 +264,7 @@ TEST_F(PaymentRequestTest, DontRejectShowPromiseForValidShippingAddress)
TEST_F(PaymentRequestTest, ResolveShowPromiseWithValidShippingAddressInResponse)
{
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());
mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::New();
response->shipping_address = mojom::blink::ShippingAddress::New();
@@ -273,7 +280,7 @@ TEST_F(PaymentRequestTest, ResolveShowPromiseWithValidShippingAddressInResponse)
TEST_F(PaymentRequestTest, ResolveShowPromiseWithoutShippingAddressInResponse)
{
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()));
@@ -284,7 +291,7 @@ TEST_F(PaymentRequestTest, ResolveShowPromiseWithoutShippingAddressInResponse)
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()));
@@ -295,7 +302,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());
@@ -305,7 +312,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());
@@ -317,7 +324,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()));
@@ -328,7 +335,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());
@@ -341,7 +348,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());
@@ -354,7 +361,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()));
@@ -365,7 +372,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());
@@ -378,7 +385,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());
@@ -389,7 +396,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()));
@@ -400,7 +407,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()));
@@ -416,7 +423,7 @@ TEST_F(PaymentRequestTest, ClearShippingOptionOnPaymentDetailsUpdateWithoutShipp
details.setItems(HeapVector<PaymentItem>(1, 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()));
@@ -438,7 +445,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 = "{\"items\": [{\"id\": \"total\", \"label\": \"Total\", \"amount\": {\"currency\": \"USD\", \"value\": \"5.00\"}}],"
@@ -456,7 +463,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 = "{\"items\": [{\"id\": \"total\", \"label\": \"Total\", \"amount\": {\"currency\": \"USD\", \"value\": \"5.00\"}}],"

Powered by Google App Engine
This is Rietveld 408576698