Re: [w3c/payment-handler] [Spec] Remove user-identifiable information from canMakePayment (PR #404)

@ianbjacobs @rsolomakhin - ok, after a few days of looking into the tests, I'm sorry to say I think I need to ask that we merge this without updating the WPT tests. The reason is that the test suite is in such a sorry state that it is currently *so far* from passing even without this change today, which makes testing this fairly impossible without re-writing the entire test suite to fix all the other problems.

A short list of problem I found *so far*:

- Tests treat `supportedMethods` as a list still, not a string
- Tests assert that `additionalDisplayItems` and `total` are not in modifiers for "canmakepaymentevent", which they are in Chrome's implementation
- Tests assert that `modifier.data` exists for "canmakepaymentevent", and it doesn't seem to for Chrome
- Tests presume that "canmakepaymentevent" affects canMakePayment(), not hasEnrolledInstrument()
- Tests presume that if "canmakepaymentevent" returns false, then show() will throw a NotSupportedError

Some of these may be actual bugs in Chrome, whilst some reflect how both the PaymentHandler spec and test suite have diverged from changes in both PaymentRequest spec and in the reality of the Chrome implementation. In all worlds, the test suite (and spec) desperately needs some TLC to at least reflect the shipping reality. But for now, I'd like to just merge this change and address that larger concern later.

(I will open a follow-on issue about the test suite)

-- 
Reply to this email directly or view it on GitHub:
https://github.com/w3c/payment-handler/pull/404#issuecomment-1351285058
You are receiving this because you are subscribed to this thread.

Message ID: <w3c/payment-handler/pull/404/c1351285058@github.com>

Received on Wednesday, 14 December 2022 12:41:54 UTC