@@ -76,31 +76,35 @@ describe('PaymentUtils', () => {
7676
7777 expect ( result . paymentType ) . toBe ( CONST . IOU . PAYMENT_TYPE . EXPENSIFY ) ;
7878 expect ( result . shouldSelectPaymentMethod ) . toBe ( true ) ;
79- expect ( result . selectedPolicy ) . toBeUndefined ( ) ;
79+ expect ( result . policyFromContext ) . toBeUndefined ( ) ;
80+ expect ( result . policyFromPaymentMethod ) . toBeUndefined ( ) ;
8081 } ) ;
8182
8283 it ( 'should return VBBA payment type when paymentMethod is BUSINESS_BANK_ACCOUNT' , ( ) => {
8384 const result = getActivePaymentType ( CONST . PAYMENT_METHODS . BUSINESS_BANK_ACCOUNT , [ ] , undefined ) ;
8485
8586 expect ( result . paymentType ) . toBe ( CONST . IOU . PAYMENT_TYPE . VBBA ) ;
8687 expect ( result . shouldSelectPaymentMethod ) . toBe ( true ) ;
87- expect ( result . selectedPolicy ) . toBeUndefined ( ) ;
88+ expect ( result . policyFromContext ) . toBeUndefined ( ) ;
89+ expect ( result . policyFromPaymentMethod ) . toBeUndefined ( ) ;
8890 } ) ;
8991
9092 it ( 'should return ELSEWHERE payment type when paymentMethod is DEBIT_CARD' , ( ) => {
9193 const result = getActivePaymentType ( CONST . PAYMENT_METHODS . DEBIT_CARD , [ ] , undefined ) ;
9294
9395 expect ( result . paymentType ) . toBe ( CONST . IOU . PAYMENT_TYPE . ELSEWHERE ) ;
9496 expect ( result . shouldSelectPaymentMethod ) . toBe ( true ) ;
95- expect ( result . selectedPolicy ) . toBeUndefined ( ) ;
97+ expect ( result . policyFromContext ) . toBeUndefined ( ) ;
98+ expect ( result . policyFromPaymentMethod ) . toBeUndefined ( ) ;
9699 } ) ;
97100
98101 it ( 'should return ELSEWHERE payment type when paymentMethod is undefined' , ( ) => {
99102 const result = getActivePaymentType ( undefined , [ ] , undefined ) ;
100103
101104 expect ( result . paymentType ) . toBe ( CONST . IOU . PAYMENT_TYPE . ELSEWHERE ) ;
102105 expect ( result . shouldSelectPaymentMethod ) . toBe ( false ) ;
103- expect ( result . selectedPolicy ) . toBeUndefined ( ) ;
106+ expect ( result . policyFromContext ) . toBeUndefined ( ) ;
107+ expect ( result . policyFromPaymentMethod ) . toBeUndefined ( ) ;
104108 } ) ;
105109
106110 it ( 'should set shouldSelectPaymentMethod to true when latestBankItems is not empty' , ( ) => {
@@ -117,24 +121,34 @@ describe('PaymentUtils', () => {
117121 expect ( result . shouldSelectPaymentMethod ) . toBe ( false ) ;
118122 } ) ;
119123
120- it ( 'should find selectedPolicy by policyID' , ( ) => {
124+ it ( 'should find policyFromContext by policyID' , ( ) => {
121125 const result = getActivePaymentType ( undefined , [ randomPolicyA , randomPolicyB ] , undefined , randomPolicyA . id ) ;
122126
123- expect ( result . selectedPolicy ) . toEqual ( randomPolicyA ) ;
127+ expect ( result . policyFromContext ) . toEqual ( randomPolicyA ) ;
128+ expect ( result . policyFromPaymentMethod ) . toBeUndefined ( ) ;
124129 } ) ;
125130
126- it ( 'should find selectedPolicy by paymentMethod when it matches policy id (Pay via workspace scenario)' , ( ) => {
131+ it ( 'should find policyFromPaymentMethod when paymentMethod matches policy id (Pay via workspace scenario)' , ( ) => {
127132 const result = getActivePaymentType ( randomPolicyB . id , [ randomPolicyA , randomPolicyB ] , undefined ) ;
128133
129- expect ( result . selectedPolicy ) . toEqual ( randomPolicyB ) ;
134+ expect ( result . policyFromPaymentMethod ) . toEqual ( randomPolicyB ) ;
135+ expect ( result . policyFromContext ) . toBeUndefined ( ) ;
130136 expect ( result . paymentType ) . toBe ( CONST . IOU . PAYMENT_TYPE . ELSEWHERE ) ;
131137 expect ( result . shouldSelectPaymentMethod ) . toBe ( false ) ;
132138 } ) ;
133139
134- it ( 'should return undefined selectedPolicy when no matching policy is found' , ( ) => {
140+ it ( 'should return both policyFromContext and policyFromPaymentMethod when both match' , ( ) => {
141+ const result = getActivePaymentType ( randomPolicyB . id , [ randomPolicyA , randomPolicyB ] , undefined , randomPolicyA . id ) ;
142+
143+ expect ( result . policyFromContext ) . toEqual ( randomPolicyA ) ;
144+ expect ( result . policyFromPaymentMethod ) . toEqual ( randomPolicyB ) ;
145+ } ) ;
146+
147+ it ( 'should return undefined policies when no matching policy is found' , ( ) => {
135148 const result = getActivePaymentType ( undefined , [ randomPolicyA ] , undefined , 'non-existent-policy' ) ;
136149
137- expect ( result . selectedPolicy ) . toBeUndefined ( ) ;
150+ expect ( result . policyFromContext ) . toBeUndefined ( ) ;
151+ expect ( result . policyFromPaymentMethod ) . toBeUndefined ( ) ;
138152 } ) ;
139153 } ) ;
140154} ) ;
0 commit comments