LG-13758: Bypass secondary id check for Enhanced IPP#10934
Conversation
fd29cf9 to
a5dbac0
Compare
|
Does this response (UspsInPersonProofing::Mock::Fixtures.request_passed_proofing_secondary_id_type_results_response) usually cause a failure for IPP (not EIPP)? |
There was a problem hiding this comment.
I am wondering if it makes sense to create a new method for creating separation between EIPP checks and ID IPP checks
def has_unsupported_secondary_id_type?(response)
response['secondaryIdType'].present? &&
SUPPORTED_SECONDARY_ID_TYPES.exclude(response['secondaryIdType'])
endThen the passed_with_unsupported_secondary_id_type? would look like this
def passed_with_unsupported_secondary_id_type?(enrollment, response)
!enrollment.enhanced_ipp? && has_unsupported_secondary_id_type?(response)
endThere was a problem hiding this comment.
Ideally it would be nice if we had a wrapper for the proofing response then we could have a method in the response wrapper that can make the check.
There was a problem hiding this comment.
Yea, that's a good thought, I'm not sure. Since this is a temporary change I would expect the final solution to either not have this check at all or expand the list of supported secondary ids based on being in the enhanced_ipp flow. I'm just not sure where this isolation would be.
@gina-yamada Yes - it does for me locally. Sorry, I've been updating the testing plan but it's going slow since I'm having some trouble on my local machine. |
jennyverdeyen
left a comment
There was a problem hiding this comment.
Test plan looks good after working out some hiccups with @KeithNava! I ran through it and both test cases behave as expected. LGTM 👍
shanechesnutt-ft
left a comment
There was a problem hiding this comment.
I ran through the tests cases yesterday. Everything looked good.
There was a problem hiding this comment.
(I'm commenting on a file so that we can thread responses to this comment and resolve the conversation when we're done chatting.)
I noticed that the testing plan recommends using UspsInPersonProofing::Mock::Fixtures.request_passed_proofing_secondary_id_type_results_response. When I look at this mock file, it has "ippAssuranceLevel": "1.5". Since this is EIPP, I think we'd want to use a file with "ippAssuranceLevel": "2.0".
I don't know that this would affect behavior for the testing plan, but I wanted to flag it because that line jumped out at me.
There was a problem hiding this comment.
I would recommend using fixtures that have the correct assurance level in the specs. Thoughts?
cd1ea4c to
99e178a
Compare
There was a problem hiding this comment.
👏🏻 for the updated ippAssuranceLevel
There was a problem hiding this comment.
Non-blocking nit: I think Bypasses should be one word here
eileen-nava
left a comment
There was a problem hiding this comment.
Thanks for refactoring! Looks good. Approved.
…ondary id check for EIPP
99e178a to
88a0258
Compare
|
Thanks everyone for your reviews and feedback! |
* feat: bypass secondary id check for enhanced ipp * feat: update tests for reusability * changelog: Upcoming Features, Enhanced In-person proofing, Bypass secondary id check for EIPP * feat: add new IAL2 fixtures * feat: add guard clause for eipp under unsupported secondary id check
🎫 Ticket
Link to the relevant ticket:
LG-13758
🛠 Summary of changes
As we await the new API contract from USPS with the expanded list of secondary ID options, we are temporarily bypassing the secondary check completely. This is to support the friends and family testing for Enhanced IPP
📜 Testing Plan
Please see the scenarios below for
Enhanced In Person Proofing Enabled
Note
Pre requisite for all of this is to spin up the OIDC-Sinatra app locally. You can find the setup steps here: https://docs.google.com/document/d/1FG9s8Cih9NGbrz7ag4WPLK_W10di-1xfDKy0Fjrg0fM/edit#heading=h.hepkwzlgvxf3. Once you have it running locally, you'll need to make sure you select the Enhanced IPP option from the dropdown. This is key since it sets the application up to enable Enhanced IPP.
Should PASS enrollment with UNSUPPORTED secondary ID #
Running the Job Manually 🧰
rails consolein the identity-idp application and grab that newly created enrollmentShould PASS enrollment with SUPPORTED secondary ID #
Running the Job Manually 🧰
rails consolein the identity-idp application and grab that newly created enrollmentID IPP (EIPP NOT Enabled)
Should FAIL enrollment with UNSUPPORTED secondary ID #
Running the Job Manually 🧰
rails consolein the identity-idp application and grab that newly created enrollmentShould PASS enrollment with SUPPORTED secondary ID #
Running the Job Manually 🧰
rails consolein the identity-idp application and grab that newly created enrollment