Description
The DutPowerUp method cannot be easily customized from source in GitHub due to the FilterPinsOrPinsGroup method dependency.
In theory, a user can leverage the source code for any of the TestStandSteps available in the Semiconductor Test Library to customize the implementation to meet their specific application's needs. This would typically be achieved by follow this simple procedure, so long as the required dependencies are referenced in the user's source project:
Download the .cs file for the desired TestStandStep method from the repo (i.e. DutPowerUp.cs).#
Note there will be one file per TestStandStep method.
Downloading the whole file ensures all of the using declarations and any private methods are properly included.
Add the download .cs file to your project source.
Rename the Namespace, Class, and file name to match your specific application.
However, if copying the source for the DutPowerUp method defined in the DutPowerUp.cs file, it uses the FilterPinsOrPinsGroup method, which is declared as a private method that is defined in the ContinuityTest.cs. If a user makes a copy of the source for the DutPowerUp method from GitHub, it would initially be broken at compile-time since it is dependent on the FilterPinsOrPinsGroup method and cannot find a reference for it. This is not desired behavior.
To Reproduce
Steps to reproduce the behavior:
Create a new STS project using the STS Project Creation Tool with NI Default C# template.
Follow the procedure above to add a custom DutPowerUp.cs implementation to the generated project source.
Note the compile errors in the DutPowerUp.cs associated with the reference for the FilterPinsOrPinsGroup not being found.
Expected behavior
Assuming the use of a project originally generated by STS Project Creation Tool or has project references that match the NI Default C# template, a user can leverage the source code for any of the TestStandSteps available in the Semiconductor Test Library to customize the implementation to meet their specific application's needs using the simple procedure above, without needing to copy any additional code dependencies.
System Setup(please complete the following information)
STS Software Version [e.g. 24.5, 24.5.x]: 24.5.0
Semiconductor Test Library Version [e.g. 24.5, 24.5.x]: 24.5.0
Instrumentation (i.e. instrument modules, such as PXIe-4147): N/A
Workaround (for users of Semiconductor Test Library 24.5.0)
Copy the implementation of the private FilterPinsOrPinsGroup method and from the ContinuityTest.cs file and add it to the copy of the DutPowerUp.cs file that was added to your project.
Resolution
As of the Semiconductor Test Library 24.5.1 release, the FilterPinsOrPinGroups method is now a public method available in the NationalInstruments.SemiconductorTestLibrary.Common namespace, and is no longer declared in the ContinuityTest.cs file as a private method. The implementations for both the ContinuityTest.cs and DutPowerUp.cs files have been updated to reference the new public FilterPinsOrPinGroups method.
Upgrading to the Semiconductor Test Library 24.5.1 NuGet package will provide users with access to FilterPinsOrPinGroups as a public method to being able follow the above procedure to customize the DutPowerUp method without needing a workaround. Additionally, users can also leverage the FilterPinsOrPinGroups method when writing the their own custom code test methods.
Description The
DutPowerUp
method cannot be easily customized from source in GitHub due to the FilterPinsOrPinsGroup method dependency.In theory, a user can leverage the source code for any of the TestStandSteps available in the Semiconductor Test Library to customize the implementation to meet their specific application's needs. This would typically be achieved by follow this simple procedure, so long as the required dependencies are referenced in the user's source project:
However, if copying the source for the
DutPowerUp
method defined in the DutPowerUp.cs file, it uses theFilterPinsOrPinsGroup
method, which is declared as a private method that is defined in the ContinuityTest.cs. If a user makes a copy of the source for theDutPowerUp
method from GitHub, it would initially be broken at compile-time since it is dependent on theFilterPinsOrPinsGroup
method and cannot find a reference for it. This is not desired behavior.To Reproduce Steps to reproduce the behavior:
FilterPinsOrPinsGroup
not being found.Expected behavior Assuming the use of a project originally generated by STS Project Creation Tool or has project references that match the NI Default C# template, a user can leverage the source code for any of the TestStandSteps available in the Semiconductor Test Library to customize the implementation to meet their specific application's needs using the simple procedure above, without needing to copy any additional code dependencies.
System Setup(please complete the following information)
Workaround (for users of Semiconductor Test Library 24.5.0) Copy the implementation of the private
FilterPinsOrPinsGroup
method and from the ContinuityTest.cs file and add it to the copy of the DutPowerUp.cs file that was added to your project.Resolution As of the Semiconductor Test Library 24.5.1 release, the
FilterPinsOrPinGroups
method is now a public method available in theNationalInstruments.SemiconductorTestLibrary.Common
namespace, and is no longer declared in the ContinuityTest.cs file as a private method. The implementations for both the ContinuityTest.cs and DutPowerUp.cs files have been updated to reference the new publicFilterPinsOrPinGroups
method.Upgrading to the Semiconductor Test Library 24.5.1 NuGet package will provide users with access to
FilterPinsOrPinGroups
as a public method to being able follow the above procedure to customize theDutPowerUp
method without needing a workaround. Additionally, users can also leverage theFilterPinsOrPinGroups
method when writing the their own custom code test methods.