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

Jul19 manual release tests: debian10 py3qt5 #977

Closed
cpascual opened this issue Jul 29, 2019 · 15 comments
Closed

Jul19 manual release tests: debian10 py3qt5 #977

cpascual opened this issue Jul 29, 2019 · 15 comments
Labels
Milestone

Comments

@cpascual
Copy link
Member

cpascual commented Jul 29, 2019

This issue is created for reporting the results of the manual tests for Jul19 release on debian10 (buster) with python3 and qt5.

The tests are done by @mrosanes and @cpascual

@cpascual cpascual added this to the Jul19 milestone Jul 29, 2019
@cpascual cpascual added the tests label Jul 29, 2019
@cpascual cpascual mentioned this issue Jul 29, 2019
5 tasks
@cpascual
Copy link
Member Author

cpascual commented Jul 29, 2019

Installation

The installation is done on a pristine taurus-test:debian-buster container deployed with

xhost +local:
docker run -d --name=taurus-buster -h taurus-test -e DISPLAY=$DISPLAY -e QT_X11_NO_MITSHM=1 -v /tmp/.X11-unix:/tmp/.X11-unix cpascual/taurus-test:debian-buster
docker exec -it taurus-buster bash
  • Install Taurus from the an artifact of Appveyor (tgz or msi): pip install <tarball_artifact_URL>

installing from latest appveyor artifact from the release-Jan19 branch with:

pip3 install https://ci.appveyor.com/api/buildjobs/g0ecp4g47ybyxvky/artifacts/dist%2Ftaurus-4.6.0a0.tar.gz
  • Install taurus-pyqtgraph from the master branch of its repo:
    pip3 install https://github.com/taurus-org/taurus_pyqtgraph/archive/master.zip.
  • Check installed version of taurus: taurus --version

taurus, version 4.6.0-alpha

  • Check installed version of taurus_pyqtgraph: taurus tpg --version

tpg, version 0.2.4a0 (with taurus 4.6.0a0)

@cpascual
Copy link
Member Author

cpascual commented Jul 29, 2019

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)

@mrosanes
Copy link
Collaborator

mrosanes commented Jul 29, 2019

taurus guiqwt image

  • Execute taurus guiqwt 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)

@mrosanes
Copy link
Collaborator

mrosanes commented Jul 29, 2019

taurus guiqwt trend2d

  • Execute: taurus --polling-period 333 guiqwt trend2d --demo
  • Execute: taurus --polling-period 333 guiqwt trend2d -xt --demo (known to fail in 4.1.0)

NOTE: It fails (known to fail)

  • Execute: taurus --polling-period 333 guiqwt trend2d -xe --demo
  • Test auto-scroll and auto-scale tools (from context menu)

@mrosanes
Copy link
Collaborator

mrosanes commented Jul 29, 2019

taurus device

  • Execute: taurus device sys/tg_test/1
  • Check that it opens correctly and that the attrs and commands are populated

NOTE: 'boolean_image Show' is not populated when opening it, It has to be resized, or specific cells have to be selected with the mouse (in order to see it populated).
NOTE: ''boolean_image Edit' is not populated either (maybe this is the expected behavior for 'edit'?)

  • 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)

@cpascual
Copy link
Member Author

cpascual commented Jul 29, 2019

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.

@cpascual
Copy link
Member Author

cpascual commented Jul 29, 2019

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 (5 times)

bug #96: It crashes for @mrosanes at the fifth time of dragging/dropping

  • 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

NOTE: I changed several labels individually and then I changed all labels from the whole form menu to {attr.label}. Everything looks ok but the following warnings were logged in the console:

MainThread     WARNING  2019-07-29 09:20:35,735 DefaultLabelWidget.tango://taurus-test:10000/sys/tg_test/1: Error formatting display (AttributeError("'NoneType' object has no attribute 'label'")). Reverting to raw string
MainThread     WARNING  2019-07-29 09:20:38,739 DefaultLabelWidget.tango://taurus-test:10000/sys/tg_test/1: Error formatting display (AttributeError("'NoneType' object has no attribute 'label'")). Reverting to raw string
(...) Repeated many times
Exception ignored in: <function CurvePlot.__del__ at 0x7fb94cbb8620>
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/guiqwt/curve.py", line 1404, in __del__
    canvas.removeEventFilter(self.filter)
RuntimeError: wrapped C/C++ object of type QwtPlotCanvas has been deleted
  • 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)

NOTE: 'boolean_image Show' is not populated when opening it, It has to be resized, or specific cells have to be selected with the mouse (in order to see it populated).
NOTE: ''boolean_image Edit' is not populated either (maybe this is the expected behavior for 'edit'?)
BUG: 'Short image Edit' -> double clicking in a cell for a first time presents the following error Traceback:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/taurus/qt/qtgui/table/taurusvaluestable.py", line 472, in createEditor
    if index.model().getType() == bool:
  File "/usr/local/lib/python3.7/dist-packages/taurus/qt/qtgui/table/taurusvaluestable.py", line 224, in getType
    return self._rtabledata.dtype
AttributeError: 'list' object has no attribute 'dtype'
  • 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

BUG: I (@mrosanes) don't know exactly how to reproduce it, but I observed one crash in the 'taurus form', followed by the message in the terminal:
RuntimeError: wrapped C/C++ object of type QwtPlotCanvas has been deleted

@mrosanes
Copy link
Collaborator

mrosanes commented Jul 29, 2019

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 Jul 29, 2019

Generic issues

Some generic issues detected in one or more tests

  • all executions involving launching Qt apps cause the following warning (but in principle, it seems inocuous. Maybe it is related with running in a docker):
MainThread     WARNING  2019-07-29 08:21:24,173 TaurusRootLogger: Qtdefault None.None[0]:  QStandardPaths: error creating runtime directory /tmp/runtime-root: File exists
  • Also ohter a few other errors are logged related to OpenGL (which vary from host machine to host machine). These are quite certainly related with running on docker.
libGL error: failed to open drm device: No such file or directory
libGL error: failed to load driver: i965
  • Missing console logs. Console output is a way less verbose than expected (this may be related with the taurus-test buster container?)
  • Missing icons. Many icons are not displayed. For example all in Model chooser except the collapse/expand ones

@mrosanes
Copy link
Collaborator

mrosanes commented Jul 29, 2019

taurus gui

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

  • Launch taurus gui example01
  • Test (un)lock view

KNOWN ISSUE #574

  • 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 (won't work if using the tpg.TaurusTrend, until this) is fixed

Drops still not supported on tpg (29/07/2019)

  • 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)

NOTE: in the info on how to install the GUI, 'pip3' should be named instead of 'pip' (or both options should be indicated): taurus-test container on buster contains only pip3 (at 29/07/2019).

  • launch foogui using the script that has been installed
  • ... other features from user's guide

@mrosanes
Copy link
Collaborator

taurus config

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

BUG: ini file is totally empty if opening as: taurus config mygui.ini
BUG: from inside 'taurus config' application, 'Open File', the tree of directories cannot be navigated and no ini file can be chosen to be opened.

@mrosanes
Copy link
Collaborator

mrosanes commented Jul 29, 2019

taurus tpg plot (needs taurus_pyqtgraph installed)

  • Execute: taurus tpg plot "eval:Q(rand(333),'mm')" sys/tg_test/1/wave
  • Check zoom / panning (drag with right / left button), and Use (A) button to auto-range
  • Test inspector tool

BUG: 'Segmentation fault' when deactivating 'Data inspector tool'. If activating and then deactivating 'Data Inspector', a Seg Fault appears.

  • 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
    Issue taurus tpg plot: curve names in legend cannot be changed taurus_pyqtgraph#31: NOT YET READY in pyqtgraph
  • Open the "Model selection" dialog and add/remove/reorder/edit models. Try adding models both for X and Y

BUG: Icons are not present in the 'Model Seletion'

  • NOT YET READY Test Save & restore config (change curve properties, zoom, etc & check that everything is restored)

@mrosanes
Copy link
Collaborator

mrosanes commented Jul 29, 2019

taurus tpg trend (needs taurus_pyqtgraph installed)

  • Execute: taurus tpg trend "eval:Q(rand(),'mm')" sys/tg_test/1/ampli
  • Execute: taurus tpg trend -xe "eval:Q(rand(),'mm')" sys/tg_test/1/ampli

NOT YET READY (tpg.Trend does not yet support non-date x axis)(20190729)

  • Check zoom / panning (drag with right / left button), and Use (A) button to auto-range
  • Test inspector tool

BUG: 'Segmentation fault' when deactivating 'Data inspector tool'. If activating and then deactivating 'Data Inspector', a Seg Fault appears.

  • 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 autopanning tool
  • Test autoscale x mode
  • NOT YET READY Test Save & restore config (change curve properties, zoom, etc & check that everything is restored)

@taurus-org taurus-org deleted a comment from mrosanes Jul 30, 2019
@mrosanes
Copy link
Collaborator

taurus designer

  • Execute taurus designer. Check that the taurus widgets are present in the catalog

BUG: Taurus widgets are missing

  • Create an empty widget and drag various taurus widgets to it (they should be correctly dropped)

BUG: Taurus widgets are missing

@cpascual
Copy link
Member Author

All relevant issues found have been already reported in the tracker, and none is considered release-critical. I am closing this test issue. Thanks @mrosanes for the tests!

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

No branches or pull requests

2 participants