You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently we have a few Selenium-based Integration tests in Refinery for Vis-Tool Launches (IGV, HiGlass), but these are slowing down our test suite over there/are quite flaky to run due to Selenium waiting and would be more appropriate in this repo.
With that being said, the UI tests are nice but maybe a bit overkill. It would be great if we could just specify a sample input.json along with a Vis-Tool and try to run a container with it through django-docker-engine.
Since we already have access to the Refinery code in our CI here, we could have a new repo structure here like:
Where we would provide input.json(s) along with our Tool Annotations and attempt to:
Create ToolDefinitions from these ToolAnnotations (we're doing this currently)
Launch a container through django-docker-engine utilizing the provided input.json. This would need to satisfy the code in VisualizationTool.launch() which would mean that we'd need to create valid Nodes & FileStoreItems which could start to get tricky.
Assert that we can get a 200 from each of the launched containers
EDIT: Thinking about this again, we could just have users provide the FILE_RELATIONSHIPS structure with urls pointing to reasonable test files that they could check into this repo as well (Could specify the raw.github.... versions). Then when we launch the Tool, we wouldn't have to worry about creating Refinery-specific objects.
The text was updated successfully, but these errors were encountered:
* Add VisualizationToolProxy so that we can check user perms. & provide persistant VisTool urls
* Add `user_has_access_to_tool()`
* Fix reference
* Add test coverage
* Fix typo
* Rename VizualizationProxy to AutoRelaunchProxy
* Simplify logic
* Less wordy error messages
* Fix test
* Just assert that we can launch Igv;
Towards #2238 and refinery-platform/visualization-tools#22
Currently we have a few Selenium-based Integration tests in Refinery for Vis-Tool Launches (IGV, HiGlass), but these are slowing down our test suite over there/are quite flaky to run due to Selenium waiting and would be more appropriate in this repo.
With that being said, the UI tests are nice but maybe a bit overkill. It would be great if we could just specify a sample
input.json
along with a Vis-Tool and try to run a container with it through django-docker-engine.Since we already have access to the Refinery code in our CI here, we could have a new repo structure here like:
Where we would provide
input.json(s)
along with our Tool Annotations and attempt to:ToolDefinitions
from these ToolAnnotations (we're doing this currently)input.json
. This would need to satisfy the code inVisualizationTool.launch()
which would mean that we'd need to create validNodes
&FileStoreItems
which could start to get tricky.EDIT: Thinking about this again, we could just have users provide the
FILE_RELATIONSHIPS
structure with urls pointing to reasonable test files that they could check into this repo as well (Could specify the raw.github.... versions). Then when we launch the Tool, we wouldn't have to worry about creating Refinery-specific objects.The text was updated successfully, but these errors were encountered: