Skip to content
This repository has been archived by the owner on Mar 17, 2021. It is now read-only.

Jul20 manual tests - debian9 py2qt4 #1138

Closed
cpascual opened this issue Aug 4, 2020 · 11 comments
Closed

Jul20 manual tests - debian9 py2qt4 #1138

cpascual opened this issue Aug 4, 2020 · 11 comments
Labels
PyQt4 this issue is specific of PyQt4 support tests
Milestone

Comments

@cpascual
Copy link
Member

cpascual commented Aug 4, 2020

This issue is created for reporting the results of manual tests for Jul20 release on debian9 with dependencies installed (as much as possible) via official repositories (using a fresh taurus-test:debian-stretch image):

xhost +local:
docker run -id --name=taurus-stretch -h taurus-test -e DISPLAY=$DISPLAY -e QT_X11_NO_MITSHM=1 -v /tmp/.X11-unix:/tmp/.X11-unix cpascual/taurus-test:debian-stretch
docker exec -it taurus-stretch bash

And, now in the docker:

# install missing dependencies
apt-get update && apt-get install python-click python-pyqtgraph
# force the use of Qt4
export QT_API=pyqt
# workaround for #836 , which affects systems with old h5py
export LANG=C.UTF-8
@cpascual cpascual added tests PyQt4 this issue is specific of PyQt4 support labels Aug 4, 2020
@cpascual
Copy link
Member Author

cpascual commented Aug 4, 2020

Installation

For tips on how to prepare an environment for installation, see
http://taurus-scada.org/users/getting_started.html

  • Install Taurus from the an artifact of Appveyor (tgz or msi):
    • pip install https://ci.appveyor.com/api/buildjobs/b2yv4g2loks47wmn/artifacts/dist%2Ftaurus-4.7.0a0.tar.gz
    • NOTE: this installed pint 0.9 from pypi too because the taurus requires pint>=0.8 and the official debian repos for stretch have 0.7
  • Install taurus-pyqtgraph from pypi:
    • pip install taurus_pyqtgraph.
  • Check installed version of taurus: taurus --version
    • -->taurus, version 4.7.0-alpha
  • Check installed version of taurus_pyqtgraph: `python -c "import taurus_pyqtgraph; print(taurus_pyqtgraph.version)"
    • --> 0.3.5

@cpascual cpascual mentioned this issue Aug 4, 2020
3 tasks
@cpascual
Copy link
Member Author

cpascual commented Aug 4, 2020

taurus demo

  • Execute taurus demo
  • Test all of the buttons of the taurus demo. All demos should launch correctly and without raising exceptions
  • For TaurusLabel, check foreground role, the background role, the prefix, the suffix, the formatter, etc.
  • For TaurusLabel, in order to test the background role=value, you can use the following attribute: eval:["FAULT","ON","OFF","ALARM"][randint(4)]
  • For TaurusLabel, use a model with fragment (e.g., sys/tg_test/1/ampli#rvalue.magnitude, eval:Q('1mm')#rvalue.units, eval:10*arange(9)#rvalue[3:4])
  • For LCD: Test the foreground roles and the background role
  • For Led: Test the colors, ON color, Off color. (hint: you can use eval:False as a model for testing)

@cpascual
Copy link
Member Author

cpascual commented Aug 4, 2020

taurus image

  • Execute taurus image --demo
  • try to resize the image and pan it using the mouse.
  • check the cross section tools, the color maps, etc.
  • replace the image using the "Change Taurus Model" button (choose , eg, sys/tg_test/1/double_image_ro)
    • **Some Icons not shown in the model chooser (e.g. "add selected" button) **

taurus trend2d

  • Execute: taurus --polling-period 333 trend2d --demo
  • Execute: taurus --polling-period 333 trend2d -xt --demo (known to fail in 4.1.0)
    • FAILS (as expected)
  • [x Execute: taurus --polling-period 333 trend2d -xn --demo
  • [x Execute: taurus --polling-period 333 trend2d -xe --demo
  • Execute: taurus --polling-period 333 trend2d --demo -b 10
    (deactivate auto-scale bottom axis and see that the plot is limited to the
    last 10 values )
  • Test auto-scroll and auto-scale tools (from context menu)

@cpascual
Copy link
Member Author

cpascual commented Aug 4, 2020

taurus designer

  • Execute taurus designer. Check that the taurus widgets are present in the catalog
  • Create an empty widget and drag various taurus widgets to it (they should be correctly dropped)

taurus device

  • Execute: taurus device sys/tg_test/1
  • Check that it opens correctly and that the attrs and commands are populated
  • Execute SwitchStates command (see that the state label changes to FAULT and its color to red)
    and then execute the Init command and the label returns to RUNNING (blue)

taurus panel

  • Execute: taurus panel
  • Navigate in the tree and select the TangoTest device (the attr an command panels should be populated)
  • Execute SwitchStates command to put it in FAULT, close the GUI and reopen it. Repeat previous point again.

taurus form

(basically try all features described in the user's guide

  • Launch taurus form sys/tg_test/1/short_scalar
  • go to label context menu, change the configuration and set range to (-1000, 1000), alarm to (-500, 500) and unit to mm. Close the form and relaunch. The new units should be used. Change the the write value and check that the orange color is used when in warning values, and that the write widget does not allow to write values out of range.
  • Test to drag and drop of this attribute onto the same form many times (4 times)
    (If it crashes, you are seeing bug TaurusForm crashes on windows if self-droping a model #96)
    • It did not crash, after ~20 repetitions
  • Open "Modify Contents" and add sys/tg_test/1 and all of its attributes. They should all show ok
  • Test the compact mode (switch to compact, noncompact; edit when in compact mode, ...) for a single
    value (from the context menu of a value label)
  • Test compact mode for all values (from the context menu of the whole form)
  • Test changing labels
  • Test changing the formatter for a single value (from the context menu of a value label) (use, e.g. >>{}<<). Do this in compact and non compact modes.
  • Test changing the formatter for all values (from the context menu of the whole form)
  • Test re-order of values with "Modify contents"
  • Test the different "show" buttons (tables, images, spectra)
    • --> PROBLEM: The table buttons do not allow editing the spectra values
  • Change the write widget of double_scalar by a TaurusWheelEdit
  • Change other read and write widgets
  • After the previous changes, you should have a quite "custom" form. Use "Save current Settings" and save
    to "tf.pck". Close the form and reopen it with taurus form --config tf.pck
  • ... other features from user's guide

@cpascual
Copy link
Member Author

cpascual commented Aug 4, 2020

taurus gui

(basically try all features described in the user's guide

  • Launch taurus gui example01
  • Test (un)lock view
  • Create a new panel (a TaurusForm) and drag and drop several models from other forms
  • Move panels around (with view unlocked!) and hide ("close") and re-show them
  • Test saving and restoring perspectives
  • Test drag&drop from a form to a trend
  • Test drag&drop from a form to a plot
  • Test clicking on "example01 synoptic" elements and check that the panels raised
  • Test that selecting a panel changes the selection on "example01 synoptic"
  • Test the actions in the menus
  • Create a new TaurusGui (call it foogui) with taurus newgui (follow the wizard)
  • Install foogui with pip (using a virtualenv may be a good idea)
  • launch foogui using the script that has been installed
  • edit the just created gui by relaunching the wizard (taurus newgui) and selecting the same directory
  • ... other features from user's guide

This was referenced Aug 5, 2020
@cpascual
Copy link
Member Author

cpascual commented Aug 5, 2020

taurus config

  • Open an ini file with taurus config and check that it is loaded correctly.

taurus icons catalog

  • Launch taurus icons. Several tabs with an array of icons should be displayed
  • Check that tooltips give info on each icon
  • Click on some icons and check that they give a bigger view of the icon and more info.

@cpascual
Copy link
Member Author

cpascual commented Aug 5, 2020

taurus_pyqtgraph plot (needs taurus_pyqtgraph installed)

  • Execute taurus plot --ls-alt (check that it lists "qwt5" and "tpg")
  • Execute: taurus plot "eval:Q(rand(333),'mm')" sys/tg_test/1/wave
    (if using py2 and Qt4, you may need to use --use-alt=tpg to select the tpg implementation)
  • Check zoom / panning (drag with right / left button), and Use (A) button to auto-range
  • Test inspector tool
  • Move curves between axes by using the plot configuration option in context menu
  • With curves in Y1 and Y2, test zooms and panning on separate axes (drag with right/left on the axis)
  • Test plot configuration dialog
  • Test changing curve titles (NOT YET READY: See taurus tpg plot: curve names in legend cannot be changed taurus_pyqtgraph#31)
  • Open the "Model selection" dialog and add/remove/reorder/edit models. Try adding models both for X and Y
  • NOT YET READY Test Save & restore config (change curve properties, zoom, etc & check that everything is restored)

taurus_pyqtgraph trend (needs taurus_pyqtgraph installed)

  • Execute taurus trend --ls-alt (check that it lists "qwt5" and "tpg")
  • Execute: taurus trend "eval:Q(rand(),'mm')" sys/tg_test/1/ampli
    (if using py2 and Qt4, you may need to use --use-alt=tpg to select the tpg implementation)
  • Execute: taurus trend -xn "eval:Q(rand(),'mm')" sys/tg_test/1/ampli
    (if using py2 and Qt4, you may need to use --use-alt=tpg to select the tpg implementation)
    • THIS IS NOT YET SUPPORTED: You should get a "X mode "n" not yet supported" message
  • Check zoom / panning (drag with right / left button), and Use (A) button to auto-range
  • Test inspector tool
  • Move curves between axes by using the plot configuration option in context menu
  • With curves in Y1 and Y2, test zooms and panning on separate axes (drag with right/left on the axis)
  • Test plot configuration dialog
  • Test Forced reading tool
  • Test Fixed Range Scale tool
  • Test autoscale x mode
  • NOT YET READY Test Save & restore config (change curve properties, zoom, etc & check that everything is restored)

@cpascual
Copy link
Member Author

cpascual commented Aug 5, 2020

taurus qwt5 plot Only if using py2 qt4

(basically try all features described in the user's guide

  • Execute: QT_API=pyqt taurus plot "eval:Q(rand(333),'mm')" sys/tg_test/1/wave
  • Check region Zoom in and out with region zoom and go back stacked zoom levels with the mouse middle button
    • It works, except the already known issue of the stacked zoom undoing not being reliable
  • Check mouse wheel Zoom
  • Test panning (dragging with CTRL pressed)
  • Test inspector mode
  • Test pause mode
  • Move curves between axes by clicking on legend (and test zoom on Y2)
  • Test plot configuration dialog
  • Test changing curve titles
  • Test Save & restore config (change curve properties, zoom, etc & check that everything is restored)
    • It works from the gui, but the --config CLI option does not work (the command exits without any message)
  • Open the "Input data selection" dialog and add/remove/reorder /edit models
  • export one curve data to ASCII and then load it using "Input data selection" -> raw data -> open file
    (Note: make sure to select the X colum as 0)
  • ... other features from user's guide

taurus qwt5 trend Only if using py2 qt4

(basically try all features described in the user's guide

  • Execute: QT_API=pyqt taurus trend "eval:Q(rand(),'mm')" sys/tg_test/1/ampli
  • Execute: QT_API=pyqt taurus trend --use-alt=qwt5 -xn "eval:Q(rand(),'mm')" sys/tg_test/1/ampli
  • Check region Zoom in and out with region zoom and go back stacked zoom levels with the mouse middle button
    • It works, except the already known issue of the stacked zoom undoing not being reliable
  • Check mouse wheel Zoom
  • Test panning (dragging with CTRL pressed)
  • Test inspector mode
  • Test pause mode
  • Move curves between axes by clicking on legend (and test zoom on Y2)
  • Test plot configuration dialog
  • Test Forced reading mode
  • Test X Axis 'fixed range scale' mode
  • Test autoscale x mode
  • Test Save & restore config (change curve properties, zoom, etc & check that everything is restored)
    • It works from the gui, but the --config CLI option does not work (the command exits without any message)
  • ... other features from user's guide

@cpascual
Copy link
Member Author

cpascual commented Aug 5, 2020

Done. A few issues found.
I do not think any of them are critical blockers, but it may be nice to investigate the --config option in qwt5's implementation of plot and trend commands and fix it if it is not too much work

@cpascual
Copy link
Member Author

cpascual commented Aug 5, 2020

I fixed the --config issue in efc9bb4

@cpascual cpascual added this to the Jul20 milestone Aug 5, 2020
@cpascual
Copy link
Member Author

cpascual commented Aug 5, 2020

With the config issue solved, I think this is ready

@cpascual cpascual closed this as completed Aug 5, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
PyQt4 this issue is specific of PyQt4 support tests
Projects
None yet
Development

No branches or pull requests

1 participant