Skip to content
Snippets Groups Projects
Commit 7751323b authored by Oscar Gustafsson's avatar Oscar Gustafsson :bicyclist:
Browse files

Add testing with pyqt5

parent c99955f8
No related branches found
No related tags found
No related merge requests found
Pipeline #88466 failed
This commit is part of merge request !129. Comments created here will be created in the context of that merge request.
...@@ -8,6 +8,9 @@ before_script: ...@@ -8,6 +8,9 @@ before_script:
- python -m pip install --upgrade pip - python -m pip install --upgrade pip
- python --version - python --version
- pip install pytest pytest-cov sphinx furo numpydoc pytest-xvfb pytest-qt setuptools_scm sphinx-qt-documentation pytest-xdist pytest-mpl - pip install pytest pytest-cov sphinx furo numpydoc pytest-xvfb pytest-qt setuptools_scm sphinx-qt-documentation pytest-xdist pytest-mpl
- pip install $QT_API
- export PYTEST_QT_API=$QT_API
- export QT_API=$QT_API
# - export CXXFLAGS='--coverage' # - export CXXFLAGS='--coverage'
- pip install -ve . - pip install -ve .
# Move file, but should be handled by installation # Move file, but should be handled by installation
...@@ -17,7 +20,7 @@ before_script: ...@@ -17,7 +20,7 @@ before_script:
.run-test: .run-test:
stage: test stage: test
script: script:
- pytest --cov=b_asic --cov-report=xml:cov.xml --cov-report=term --color=yes test --mpl - pytest --cov=b_asic --cov-report=xml:cov.xml --cov-report=term --color=yes test --mpl --timeout=120
# - lcov --capture --directory . --output-file coverage.info # - lcov --capture --directory . --output-file coverage.info
# - lcov --output-file coverage.info --extract coverage.info $PWD/src/'*' $PWD/b_asic/'*' # - lcov --output-file coverage.info --extract coverage.info $PWD/src/'*' $PWD/b_asic/'*'
# - lcov --list coverage.info # - lcov --list coverage.info
...@@ -30,19 +33,59 @@ before_script: ...@@ -30,19 +33,59 @@ before_script:
coverage: /(?i)total.*? (100(?:\.0+)?\%|[1-9]?\d(?:\.\d+)?\%)$/ coverage: /(?i)total.*? (100(?:\.0+)?\%|[1-9]?\d(?:\.\d+)?\%)$/
run-test-3.8: run-test-3.8-pyside2:
variables:
QT_API: pyside2
image: python:3.8 image: python:3.8
extends: ".run-test" extends: ".run-test"
run-test-3.9: run-test-3.8-pyqt5:
variables:
QT_API: pyqt5
image: python:3.8
extends: ".run-test"
run-test-3.9-pyside2:
variables:
QT_API: pyside2
image: python:3.9
extends: ".run-test"
run-test-3.9-pyqt5:
variables:
QT_API: pyqt5
image: python:3.9 image: python:3.9
extends: ".run-test" extends: ".run-test"
run-test-3.10: run-test-3.10-pyside2:
variables:
QT_API: pyside2
image: python:3.10
extends: ".run-test"
run-test-3.10-pyqt5:
variables:
QT_API: pyqt5
image: python:3.10
extends: ".run-test"
run-test-3.10-pyside6:
variables:
QT_API: pyside6
image: python:3.10
extends: ".run-test"
allow_failure: true
run-test-3.10-pyqt6:
variables:
QT_API: pyqt6
image: python:3.10 image: python:3.10
extends: ".run-test" extends: ".run-test"
allow_failure: true
run-doc-test: run-doc-test:
variables:
QT_API: pyside2
image: python:3.10 image: python:3.10
stage: test stage: test
script: script:
...@@ -53,6 +96,8 @@ run-doc-test: ...@@ -53,6 +96,8 @@ run-doc-test:
# extends: ".run-test" # extends: ".run-test"
pages: pages:
variables:
QT_API: pyqt5
stage: deploy stage: deploy
image: python:3.10 image: python:3.10
script: script:
......
...@@ -16,6 +16,7 @@ from qtpy.QtWidgets import ( ...@@ -16,6 +16,7 @@ from qtpy.QtWidgets import (
QAction, QAction,
QApplication, QApplication,
QFileDialog, QFileDialog,
QGraphicsItem,
QGraphicsScene, QGraphicsScene,
QGraphicsTextItem, QGraphicsTextItem,
QGraphicsView, QGraphicsView,
...@@ -527,7 +528,7 @@ class MainWindow(QMainWindow): ...@@ -527,7 +528,7 @@ class MainWindow(QMainWindow):
attr_button_scene.moveBy( attr_button_scene.moveBy(
int(self.scene.width() / 4), int(self.scene.height() / 4) int(self.scene.width() / 4), int(self.scene.height() / 4)
) )
attr_button_scene.setFlag(attr_button_scene.ItemIsSelectable, True) attr_button_scene.setFlag(QGraphicsItem.ItemIsSelectable, True)
operation_label = QGraphicsTextItem(op.name, attr_button_scene) operation_label = QGraphicsTextItem(op.name, attr_button_scene)
if not self.is_show_names: if not self.is_show_names:
operation_label.setOpacity(0) operation_label.setOpacity(0)
......
...@@ -9,7 +9,7 @@ from math import pi, sin ...@@ -9,7 +9,7 @@ from math import pi, sin
from typing import List, Optional, Union from typing import List, Optional, Union
# QGraphics and QPainter imports # QGraphics and QPainter imports
from qtpy.QtCore import QPoint, QPointF, Qt from qtpy.QtCore import QPointF, Qt
from qtpy.QtGui import QBrush, QPen, QPolygonF from qtpy.QtGui import QBrush, QPen, QPolygonF
from qtpy.QtWidgets import ( from qtpy.QtWidgets import (
QGraphicsItem, QGraphicsItem,
...@@ -318,7 +318,7 @@ class AxesItem(QGraphicsItemGroup): ...@@ -318,7 +318,7 @@ class AxesItem(QGraphicsItemGroup):
self._append_x_tick() self._append_x_tick()
pos = self._x_ledger[-1].pos() pos = self._x_ledger[-1].pos()
self._x_ledger[-1].setPos( self._x_ledger[-1].setPos(
pos + QPoint(self._width, 0) pos + QPointF(self._width, 0)
) # move timeline ) # move timeline
# y-axis # y-axis
......
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set> <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property> </property>
<property name="renderHints"> <property name="renderHints">
<set>QPainter::HighQualityAntialiasing|QPainter::TextAntialiasing</set> <set>QPainter::Antialiasing|QPainter::TextAntialiasing</set>
</property> </property>
<property name="viewportUpdateMode"> <property name="viewportUpdateMode">
<enum>QGraphicsView::FullViewportUpdate</enum> <enum>QGraphicsView::FullViewportUpdate</enum>
......
...@@ -55,8 +55,7 @@ class Ui_MainWindow(object): ...@@ -55,8 +55,7 @@ class Ui_MainWindow(object):
QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop
) )
self.view.setRenderHints( self.view.setRenderHints(
QtGui.QPainter.HighQualityAntialiasing QtGui.QPainter.Antialiasing | QtGui.QPainter.TextAntialiasing
| QtGui.QPainter.TextAntialiasing
) )
self.view.setViewportUpdateMode( self.view.setViewportUpdateMode(
QtWidgets.QGraphicsView.FullViewportUpdate QtWidgets.QGraphicsView.FullViewportUpdate
......
...@@ -10,7 +10,7 @@ requires-python = ">=3.8" ...@@ -10,7 +10,7 @@ requires-python = ">=3.8"
dependencies = [ dependencies = [
"numpy", "numpy",
"pybind11>=2.3.0", "pybind11>=2.3.0",
"pyside2", # "pyside2",
"qtpy", "qtpy",
"graphviz>=0.19", "graphviz>=0.19",
"matplotlib", "matplotlib",
......
...@@ -2,5 +2,6 @@ pytest ...@@ -2,5 +2,6 @@ pytest
pytest-cov pytest-cov
pytest-qt pytest-qt
pytest-mpl pytest-mpl
pytest-timeout
pytest-xvfb pytest-xvfb
pytest-xdist pytest-xdist
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment