-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace the XPath overrides with a more intuitive syntax, add support for properties #18
Conversation
The overrides are specified with the syntax demonstrated below. [Overrides] "Targets/Controller/IP Address" = "10.2.64.29" "Aliases/DoNotAllowUnmappedAliases" = "false" "Targets/Controller/Hardware/Chassis/Timing and Sync/Chassis TimeSync/user.CD.Priority1" = "64"
We want a 1D array, not a 2D array
This API is intended to be less verbose than using the SystemDefinition API directly, while allowing for dropping into the SystemDefinition API as needed. A test has been added which uses the getters to validate overrides were applied properly.
…tion to call common private methods. Added ConfigureSystemDefinitionFile to utilities.
Bleep bloop! LabVIEW Diff Robot here with some diffs served up hot for your pull request. Notice something funny? Help fix me on my GitHub repo. VeriStandTestCase.lvclass--4q4y0a_PatchSystemDefinitionFile.vi.png:
VeriStandTestCase.lvclass--aJhdsa_OpenVeriStandConnection.vi.png:
VeriStandTestCase.lvclass--fdvMnc_BenchmarkSystemDefinition.vi.png:
VeriStandTestCaseTests.lvclass--UP56Jb_testOpenCloseVeriStandConnection.vi.png:
VeriStandTestUtilities.lvlib--4Ddfwb_QueryDAQHardware.vi.png:
VeriStandTestUtilities.lvlib--7agktc_SaveSystemDefinitionFile.vi.png:
VeriStandTestUtilities.lvlib--A04Na9_ConfigureTarget.vi.png:
VeriStandTestUtilities.lvlib--e7vGJa_ReadSystemDefinitionOverrideFile.vi.png:
VeriStandTestUtilities.lvlib--Ewtcya_QueryHardware.vi.png:
VeriStandTestUtilities.lvlib--FeaeJa_GenerateOverriddenSystemDefinition.vi.png:
VeriStandTestUtilities.lvlib--Gtc1ab_QueryCustomDevices.vi.png:
VeriStandTestUtilities.lvlib--hOXiBa_QueryTimingAndSyncHardware.vi.png:
VeriStandTestUtilities.lvlib--nRzCyb_ParseSystemDefinitionFile.vi.png:
VeriStandTestUtilities.lvlib--w5jBcb_QueryTarget.vi.png:
|
There are a few VIs which still use XPath in their implementation, e.g. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The file now can also specify properties; overrides.ini is misleading.
Bleep bloop! LabVIEW Diff Robot here with some diffs served up hot for your pull request. Notice something funny? Help fix me on my GitHub repo. VeriStandTestCase.lvclass--9Osx1b_BenchmarkSystemDefinition.vi.png:
VeriStandTestCase.lvclass--CMwQDa_MakePathsAbsoluteWithDefaults.vi.png:
VeriStandTestCase.lvclass--Nq5HB9_PatchSystemDefinitionFile.vi.png:
VeriStandTestCase.lvclass--TeZHeb_OpenVeriStandConnection.vi.png:
VeriStandTestCaseTests.lvclass--CVLTna_testBenchmarkSystemDefinitionPasses.vi.png:
VeriStandTestCaseTests.lvclass--jAE1W9_testOpenCloseVeriStandConnection.vi.png:
VeriStandTestCaseTests.lvclass--zHMCE9_testBenchmarkSystemDefinitionFails.vi.png:
VeriStandTestUtilities.lvlib--5NcaWa_QueryDAQHardware.vi.png:
VeriStandTestUtilities.lvlib--A3hNjc_QueryCustomDevices.vi.png:
VeriStandTestUtilities.lvlib--bJDteb_ConfigureTarget.vi.png:
VeriStandTestUtilities.lvlib--FhhA88_QueryHardware.vi.png:
VeriStandTestUtilities.lvlib--iz2PBa_ReadSystemDefinitionOverrideFile.vi.png:
VeriStandTestUtilities.lvlib--O0hm9b_QueryTimingAndSyncHardware.vi.png:
VeriStandTestUtilities.lvlib--sbKMZ8_SaveSystemDefinitionFile.vi.png:
VeriStandTestUtilities.lvlib--xZdyYa_ParseSystemDefinitionFile.vi.png:
VeriStandTestUtilities.lvlib--YhBE4a_GenerateOverriddenSystemDefinition.vi.png:
VeriStandTestUtilities.lvlib--YZL7Ga_QueryTarget.vi.png:
|
What does this Pull Request accomplish?
Replace the existing XPath-based overrides system with a cleaner syntax, and add support for reading properties from the configuration file. The result is a cleaner system for overrides, and a solution to the existing problem of getting setup-specific information not included in the system definition, e.g. the FPGA IP used in the SLSC loopback tests.
Why should this Pull Request be merged?
The existing XPath configuration method assumes the user is intimately familiar with the system definition file format, as well as XPath queries, and provides many opportunities for error. The new syntax is more intuitive, and more directly maps to the system definition explorer.
An example configuration file is shown below.
What testing has been done?