From 0f5f571f98ee261db6049e297e3c56e5d163e205 Mon Sep 17 00:00:00 2001
From: Philipp Stracker
Date: Fri, 21 Feb 2025 20:52:54 +0100
Subject: [PATCH] =?UTF-8?q?=F0=9F=A7=AA=20Define=20new=20selector=20respon?=
=?UTF-8?q?se=20format?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../js/data/onboarding/selectors.test.js | 49 ++++++++++++++-----
1 file changed, 38 insertions(+), 11 deletions(-)
diff --git a/modules/ppcp-settings/resources/js/data/onboarding/selectors.test.js b/modules/ppcp-settings/resources/js/data/onboarding/selectors.test.js
index 67fcc386c..1680e3e20 100644
--- a/modules/ppcp-settings/resources/js/data/onboarding/selectors.test.js
+++ b/modules/ppcp-settings/resources/js/data/onboarding/selectors.test.js
@@ -13,7 +13,10 @@ describe( 'determineProductsAndCaps selector [casual seller]', () => {
},
flags: { canUseCardPayments: false, canUseVaulting: false },
},
- expected: [ 'EXPRESS_CHECKOUT' ],
+ expected: {
+ products: [ 'EXPRESS_CHECKOUT' ],
+ options: {},
+ },
},
{
name: 'should return EXPRESS_CHECKOUT when optional payment methods are disabled',
@@ -24,7 +27,10 @@ describe( 'determineProductsAndCaps selector [casual seller]', () => {
},
flags: { canUseCardPayments: true, canUseVaulting: false },
},
- expected: [ 'EXPRESS_CHECKOUT' ],
+ expected: {
+ products: [ 'EXPRESS_CHECKOUT' ],
+ options: {},
+ },
},
{
name: 'should return EXPRESS_CHECKOUT for casual sellers with card payments',
@@ -35,7 +41,10 @@ describe( 'determineProductsAndCaps selector [casual seller]', () => {
},
flags: { canUseCardPayments: true, canUseVaulting: false },
},
- expected: [ 'EXPRESS_CHECKOUT' ],
+ expected: {
+ products: [ 'EXPRESS_CHECKOUT' ],
+ options: {},
+ },
},
{
name: 'should return EXPRESS_CHECKOUT and ADVANCED_VAULTING when card payments are not available but vaulting is',
@@ -46,11 +55,14 @@ describe( 'determineProductsAndCaps selector [casual seller]', () => {
},
flags: { canUseCardPayments: false, canUseVaulting: true },
},
- expected: [ 'EXPRESS_CHECKOUT', 'ADVANCED_VAULTING' ],
+ expected: {
+ products: [ 'EXPRESS_CHECKOUT', 'ADVANCED_VAULTING' ],
+ options: {},
+ },
},
];
- it.each( testCases )( '$name', ( { state, expected } ) => {
+ test.each( testCases )( '$name', ( { state, expected } ) => {
const result = determineProductsAndCaps( state );
expect( result ).toEqual( expected );
} );
@@ -67,7 +79,10 @@ describe( 'determineProductsAndCaps selector [business seller]', () => {
},
flags: { canUseCardPayments: false, canUseVaulting: false },
},
- expected: [ 'EXPRESS_CHECKOUT' ],
+ expected: {
+ products: [ 'EXPRESS_CHECKOUT' ],
+ options: {},
+ },
},
{
name: 'should return EXPRESS_CHECKOUT when optional payment methods are disabled',
@@ -78,7 +93,10 @@ describe( 'determineProductsAndCaps selector [business seller]', () => {
},
flags: { canUseCardPayments: true, canUseVaulting: false },
},
- expected: [ 'EXPRESS_CHECKOUT' ],
+ expected: {
+ products: [ 'EXPRESS_CHECKOUT' ],
+ options: {},
+ },
},
{
name: 'should return PPCP for business merchants with card payments',
@@ -89,7 +107,10 @@ describe( 'determineProductsAndCaps selector [business seller]', () => {
},
flags: { canUseCardPayments: true, canUseVaulting: false },
},
- expected: [ 'PPCP' ],
+ expected: {
+ products: [ 'PPCP' ],
+ options: {},
+ },
},
{
name: 'should include ADVANCED_VAULTING when vaulting is available',
@@ -100,7 +121,10 @@ describe( 'determineProductsAndCaps selector [business seller]', () => {
},
flags: { canUseCardPayments: true, canUseVaulting: true },
},
- expected: [ 'PPCP', 'ADVANCED_VAULTING' ],
+ expected: {
+ products: [ 'PPCP', 'ADVANCED_VAULTING' ],
+ options: {},
+ },
},
{
name: 'should return EXPRESS_CHECKOUT and ADVANCED_VAULTING when card payments are not available but vaulting is',
@@ -111,11 +135,14 @@ describe( 'determineProductsAndCaps selector [business seller]', () => {
},
flags: { canUseCardPayments: false, canUseVaulting: true },
},
- expected: [ 'EXPRESS_CHECKOUT', 'ADVANCED_VAULTING' ],
+ expected: {
+ products: [ 'EXPRESS_CHECKOUT', 'ADVANCED_VAULTING' ],
+ options: {},
+ },
},
];
- it.each( testCases )( '$name', ( { state, expected } ) => {
+ test.each( testCases )( '$name', ( { state, expected } ) => {
const result = determineProductsAndCaps( state );
expect( result ).toEqual( expected );
} );