The Entra Id provider script has incorporated some complex logic over time and in order to continuously test the scenarios that were coded, we need an automated repeatable mechanism. In particular the Get-PrivilegedUser function and the recursive LoadObjectDataIntoPrivilegedUserHashtable function. For the most recent PR #1310 I had to concoct and document some multi-step scenarios for manual testing by PR reviewers. Those take careful setup in the tenant and an eye for detail on the part of the reviewer, plus they require manual labor.
The scope of this issue is to examine the code, determine which test scenarios need long-term automated test cases, and then determine how to codify those tests which will require some creative solutions given the constraints involved with manipulating the tenant to set up the objects needed. We also have some automated unit tests that exercise the
Implementation notes
[ ] Examine the logic for the LoadObjectDataIntoPrivilegedUserHashtable and Get-PrivilegedUser functions. Document the distinct scenarios that are codified in a spreadsheet.
[ ] Examine the existing unit tests in LoadObjectDataIntoPrivilegedUserHashtable.Tests.ps1 and document the scenarios being tested and the scope of the tests. If there are any gaps, note them.
[ ] Determine which new functional tests are needed.
[ ] Determine which new unit tests are needed.
[ ] Since the existing functional test orchestrator does not have an existing mechanism to conduct tests of this complexity within the tenant, determine if the orchestrator needs to be augmented.
💡 Summary
The Entra Id provider script has incorporated some complex logic over time and in order to continuously test the scenarios that were coded, we need an automated repeatable mechanism. In particular the Get-PrivilegedUser function and the recursive LoadObjectDataIntoPrivilegedUserHashtable function. For the most recent PR #1310 I had to concoct and document some multi-step scenarios for manual testing by PR reviewers. Those take careful setup in the tenant and an eye for detail on the part of the reviewer, plus they require manual labor.
The scope of this issue is to examine the code, determine which test scenarios need long-term automated test cases, and then determine how to codify those tests which will require some creative solutions given the constraints involved with manipulating the tenant to set up the objects needed. We also have some automated unit tests that exercise the
Implementation notes