Commit 8f01e285 authored by Glen Robertson's avatar Glen Robertson Committed by Commit Bot

digitalgoods:Make GetDigitalGoodsService return null not undefined.

This matches the explainer and makes it more explicit that the service
was not available intentionally.

Bug: 1131747
Change-Id: I9afca606f000d969b05b1e5cff9f95b124617b83
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2497944Reviewed-by: default avatarDominick Ng <dominickn@chromium.org>
Commit-Queue: Glen Robertson <glenrob@chromium.org>
Cr-Commit-Position: refs/heads/master@{#821629}
parent a6ff22fd
......@@ -26,7 +26,7 @@ void OnCreateDigitalGoodsResponse(
if (code != CreateDigitalGoodsResponseCode::kOk) {
DCHECK(!pending_remote);
DVLOG(1) << "CreateDigitalGoodsResponseCode " << code;
resolver->Resolve();
resolver->Resolve(v8::Null(resolver->GetScriptState()->GetIsolate()));
return;
}
DCHECK(pending_remote);
......@@ -55,11 +55,11 @@ ScriptPromise DOMWindowDigitalGoods::GetDigitalGoodsService(
auto promise = resolver->Promise();
if (payment_method.IsEmpty()) {
resolver->Resolve();
resolver->Resolve(v8::Null(script_state->GetIsolate()));
return promise;
}
if (payment_method != known_payment_method_) {
resolver->Resolve();
resolver->Resolve(v8::Null(script_state->GetIsolate()));
return promise;
}
......
......@@ -14,16 +14,20 @@
<script>
'use strict';
digital_goods_test(
async service => assert_not_equals(service, undefined),
{title: 'Digital goods service exists.'});
digital_goods_test(
async service => assert_equals(service, undefined),
{
paymentMethod: 'https://not.known/payment/method',
title: 'Digital goods service null for unknown payment method.'
});
digital_goods_test(async service => {
assert_not_equals(service, undefined);
}, {title: 'Digital goods service exists.'});
digital_goods_test(async service => {
assert_not_equals(service, null);
}, {title: 'Digital goods service is available.'});
digital_goods_test(async service => {
assert_equals(service, null);
}, {
paymentMethod: 'https://not.known/payment/method',
title: 'Digital goods service null for unknown payment method.'
});
digital_goods_test(async service => {
const response = await service.getDetails(['id2']);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment