Skip to content
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

Run Tests in Active Project VI not part of Caraya.lvlib #120

Closed
volks73 opened this issue Jan 5, 2021 · 5 comments
Closed

Run Tests in Active Project VI not part of Caraya.lvlib #120

volks73 opened this issue Jan 5, 2021 · 5 comments
Assignees
Labels
Milestone

Comments

@volks73
Copy link

volks73 commented Jan 5, 2021

The Run Tests in Active Project.vi is installed in the <LabVIEW>\project\Caraya. I think this is the correct location for VIs that implement functionality for add-on menu items and toolbar buttons like in #97, but the Run Tests in Active Project.vi is called via a static reference in the private Process.vi of the Basic Test Manager class. This makes it a dependency outside of the vi.lib and outside of the Caraya.lvlib.

Since the VI is being used within the toolkit and library, I think it should be moved to within the Caraya.lvlib and be installed in the <LabVIEW>\vi.lib\addons\_JKI Toolkits\Caraya location or the <LabVIEW\vi.lib\addons\_JKI Toolkits\_Caraya_internal_deps location. A separate VI for the addon menu item/toolbar button would call the Run Tests in Active Project.vi as a subVI, similar to the Process.vi. It could be in the subVIs but be publicly scoped. This would eliminate bringing in the <LabVIEW>\project folder as a dependency for projects that use Caraya for development but do not ship with Caraya as a dependency.

I readily admit this is mostly for selfish reasons because when saving a project to an older version of LabVIEW that uses Caraya, the <LabVIEW>\project folder is not excluded and will be saved in a parallel file structure, similar to #23 and #103. This would be a workaround to place the dependency (Run Tests in Active Project.vi) in the vi.lib so it can be excluded. However, I am not a 100% sure on the side effects for the toolbar button and menu items.

As a temporary workaround, I just move the VI after installation/upgrade to the subVI from within a LabVIEW project using the "Move on Disk" functionality to avoid conflicts and missing dependencies.

@bheemann
Copy link

bheemann commented Jan 8, 2021

Hi,
I have encountered the same problem. It has broken our CI/CD-System today because our jenkins agents are facing dependency errors with "Run Tests in Active Project.vi". I would appreciate a fix so that one can use the new version with version control where the project is checked out at different places.

:-)

@francois-normandin
Copy link
Collaborator

@bheemann Can you describe what you mean by "project is checked out at different places"?
It probably has no impact on the solution to be implemented, but it would help me understand the workflow...

@francois-normandin
Copy link
Collaborator

@volks73 Thanks for this suggestion. I agree that a subVI wrapper is probably the solution here.
This only adds another reason to split the Basic Test Manager in two parts: a Test Engine and a View. 😄

@francois-normandin
Copy link
Collaborator

I can confirm that the Run Tests in Active Project.vi should have followed the same pattern as Select and Run Tests on Disk.vi.
The functionality has been copied to the Utilities folder in the Caraya library, and the tools menu caller is now a wrapper on this method (and responsible for fetching the active project reference in the menu application instance). The Test Manager now calls directly into the library, so all calls will stay within vi.lib folder.

You can expect this fix to be included in the 1.2.x release.

@francois-normandin francois-normandin added this to the 1.2 milestone Jun 15, 2021
@francois-normandin
Copy link
Collaborator

Included in 1.2.0 to be released soon
https://github.com/JKISoftware/Caraya/milestone/6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants