
PASS If details.id is missing, assign an identifier 
PASS If details.id is missing, assign a unique identifier 
PASS If the same id is provided, then use it 
PASS Use ids even if they are strange 
PASS Use provided request ID 
PASS If the length of the methodData sequence is zero, then throw a TypeError 
PASS Modifier method data must be JSON-serializable object 
PASS Rethrow any exceptions of JSON-serializing paymentMethod.data into a string 
PASS If details.total.amount.value is not a valid decimal monetary value, then throw a TypeError 
PASS PaymentDetailsBase members can be 0 length 
PASS If the first character of details.total.amount.value is U+002D HYPHEN-MINUS, then throw a TypeError 
PASS For each item in details.displayItems: if item.amount.value is not a valid decimal monetary value, then throw a TypeError 
PASS Negative values are allowed for displayItems.amount.value, irrespective of total amount 
PASS it handles high precision currency values without throwing 
PASS For each option in details.shippingOptions: if option.amount.value is not a valid decimal monetary value, then throw a TypeError 
PASS If there is no selected shipping option, then PaymentRequest.shippingOption remains null 
PASS If there is a selected shipping option, and requestShipping is set, then that option becomes synchronously selected 
PASS If requestShipping is set, and if there is a multiple selected shipping options, only the last is selected. 
PASS If there are any duplicate shipping option ids, and shipping is requested, then throw a TypeError 
PASS Throw when there are duplicate shippingOption ids, even if other values are different 
PASS Throw TypeError if modifier.total.amount.value is not a valid decimal monetary value 
PASS If amount.value of additionalDisplayItems is not a valid decimal monetary value, then throw a TypeError 
PASS Modifier data must be JSON-serializable object (an Array in this case) 
PASS Modifier data must be JSON-serializable object (an Object in this case) 
PASS Rethrow any exceptions of JSON-serializing modifier.data 
PASS Shipping type should be valid 
PASS PaymentRequest.shippingAddress must initially be null 
PASS If options.requestShipping is not set, then request.shippingType attribute is null. 
PASS If options.requestShipping is true, request.shippingType will be options.shippingType. 

