New issue
Advanced search Search tips

Issue 764201 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug


Participants' hotlists:
Payment-Interop


Sign in to add a comment

PaymentRequest and PaymentResponse's shippingAddress not same reference

Reported by mcace...@mozilla.com, Sep 12 2017

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3212.0 Safari/537.36

Steps to reproduce the problem:
1. Create a payment `request`.
2. call .show() and await a `response`. 
3. Strictly compare:
   request.shippingAddress === response.shippingAddress

You can also use the attached file, but you need to run it in the Web Platform Test harness. 

I'm about to send a pull request for it and it will be here:
https://w3c.github.io/payment-request/payment-request/user-accepts-payment-request-algo-manual.https.html

What is the expected behavior?
The above should return true, per spec. They should be referencing the same instance. 

What went wrong?
It returns false. 

The objects contain the same values, but they are not the same instance. 

Did this work before? No 

Does this work in other browsers? N/A

Chrome version: 63.0.3212.0  Channel: canary
OS Version: OS X 10.12.6
Flash Version: 

Web platform test is incoming (not landed yet, but will be here):
https://w3c.github.io/payment-request/payment-request/user-accepts-payment-request-algo-manual.https.html
 
user-accepts-payment-request-algo-manual.https.html
7.0 KB View Download
Components: Blink>Payments
Owner: rouslan@chromium.org
Status: Assigned (was: Unconfirmed)
Thank you for the report. I will look into this.
Status: Started (was: Assigned)
Project Member

Comment 3 by bugdroid1@chromium.org, Sep 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/40d02904f5ee153daa2d5cd666ccfdf2756687ce

commit 40d02904f5ee153daa2d5cd666ccfdf2756687ce
Author: Rouslan Solomakhin <rouslan@chromium.org>
Date: Fri Sep 22 16:03:09 2017

[Payments] Same instance shipping address.

PaymentRequest.shippingAddress and PaymentResponse.shippingAddress
should be the same instance and === should return true.

Bug:  764201 
Change-Id: I6c8ab3a4ca3ff61f628e32034291a6d2e218dd8b
Reviewed-on: https://chromium-review.googlesource.com/675504
Reviewed-by: Mathieu Perreault <mathp@chromium.org>
Commit-Queue: Rouslan Solomakhin <rouslan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#503755}
[add] https://crrev.com/40d02904f5ee153daa2d5cd666ccfdf2756687ce/chrome/browser/ui/views/payments/payment_request_shipping_address_instance_browsertest.cc
[modify] https://crrev.com/40d02904f5ee153daa2d5cd666ccfdf2756687ce/chrome/test/BUILD.gn
[add] https://crrev.com/40d02904f5ee153daa2d5cd666ccfdf2756687ce/components/test/data/payments/payment_request_shipping_address_instance_test.html
[add] https://crrev.com/40d02904f5ee153daa2d5cd666ccfdf2756687ce/components/test/data/payments/shipping_address_instance.js
[modify] https://crrev.com/40d02904f5ee153daa2d5cd666ccfdf2756687ce/third_party/WebKit/Source/modules/payments/PaymentRequest.cpp
[modify] https://crrev.com/40d02904f5ee153daa2d5cd666ccfdf2756687ce/third_party/WebKit/Source/modules/payments/PaymentResponse.cpp
[modify] https://crrev.com/40d02904f5ee153daa2d5cd666ccfdf2756687ce/third_party/WebKit/Source/modules/payments/PaymentResponse.h
[modify] https://crrev.com/40d02904f5ee153daa2d5cd666ccfdf2756687ce/third_party/WebKit/Source/modules/payments/PaymentResponseTest.cpp

Status: Fixed (was: Started)

Sign in to add a comment