Add new TLS tests to all driver system tests - #2214
ryanwixon-emerson wants to merge 43 commits into
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #2214 +/- ##
=======================================
Coverage 88.13% 88.13%
=======================================
Files 88 88
Lines 22828 22828
=======================================
+ Hits 20119 20120 +1
+ Misses 2709 2708 -1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
|
||
|
|
||
| class SystemTests: | ||
| # Defines a subset of system tests to validate basic NI-DCPower functionality. This is run as a part of the full SystemTests class, and |
There was a problem hiding this comment.
I would say this is slightly inaccurate. The purpose of our system tests is to validate the API, not the driver. As part of that, we do make actual driver calls, but validating the driver functionality would be much more complicated and generally requires real hardware.
The driver is NI-DCPower, but the Python API is nidcpower.
This comment applies to all of the system tests, you're touching, as well as nidmm system tests.
This contribution adheres to CONTRIBUTING.md.
I've updated CHANGELOG.md if applicable.I've added tests applicable for this pull request
What does this Pull Request accomplish?
This PR implements TLS-enabled gRPC tests in every driver which includes
grpc-devicerelated testing:nidcpowernidigitalnifgennirfsanirfsgniscopeniswitchThe implementations follow the pattern first established by the trial driver, NI-DMM, in a previous PR (#2208):
BasicValidationTestsclassni-tls-configenabled workflows (one for enabled mTLS and one for disabled mTLS)(This PR also makes a minor change to the NI-DMM tests by adding the self test function to the
BasicValidationTestsclass. This is to bring it in line with these drivers, since I decided that it would be a good idea for everything to run it as a part of all of their tests).List issues fixed by this Pull Request below, if any.
N/A - This PR does not address any issues.
What testing has been done?
The PR CI pipelines successfully ran and indicated that the new tests are running correctly. This is sufficient because the implementation details are identical to that of NI-DMM, which was thoroughly tested with Wireshark to validate that the tests are using the proper TLS configurations and use real encrypted communication.