CIP-2335 Migrate the SlimMeshTest from Engineering Console to MCS
This MR merges the SlimTest command found in the Engineering Console to MCS. This command logs a similar output compared to the Engineering Console verson of the command to the logger for SLIM Device.
Added:
- SlimTest Command: Prints to Logger (Info Level) Connection and BER status of the configured SLIM Mesh Links along with a SLIM Link Health Summary table
- Added the following properties to SlimLink and SlimLinkComponentManager that retrieves diagnostic values from the Talon Device that was not available in MCS:
- rx_debug_alignment_and_lock_status
- rx_link_occupancy
- tx_link_occupancy
- Added integration tests to check that SlimTest will not run before the mesh is configured and that it will run successfully after the mesh is configured.
- Fixed issues with SlimDevice's Off command, which was not properly running when in simulation mode. With this fix, I have also rearrange how the Off_test and Disable_test is called within the SLIM integration test.
Changes from Engineering Console:
There is currently a 2 second sleep from after the SLIM Mesh is Configured to the Diagnostic Helpers are run. Unlike EC Console, MCS is limited by device wide timeout limit of 3 seconds. A work-around will be available (SlowCommand) after the Base Class Update should we need more than 2 second between Configure and running the Diagnostic.- Because SlimTest does not configure the mesh anymore, I have remove the time delay before the tests are run.
- I have wrap the two test function found in EC into a public slim_test() function in the SlimComponetManager. This is to consolidate common Device Proxy access for values needed in both functions.
Edited by Acky Xu