mirror of
https://github.com/rbreu/beeref.git
synced 2026-03-11 08:54:28 +00:00
Some more unit tests
This commit is contained in:
parent
d3f45f2e38
commit
6942c40615
2 changed files with 111 additions and 3 deletions
|
|
@ -544,6 +544,54 @@ def test_on_action_cut(copy_mock, view, item):
|
|||
assert view.undo_stack.isClean() is False
|
||||
|
||||
|
||||
def test_on_action_reset_scale(view, item):
|
||||
view.scene.addItem(item)
|
||||
item.setScale(2)
|
||||
item.setSelected(True)
|
||||
view.on_action_reset_scale()
|
||||
assert item.scale() == 1
|
||||
|
||||
|
||||
def test_on_action_reset_rotation(view, item):
|
||||
view.scene.addItem(item)
|
||||
item.setRotation(90)
|
||||
item.setSelected(True)
|
||||
view.on_action_reset_rotation()
|
||||
assert item.rotation() == 0
|
||||
|
||||
|
||||
def test_on_action_reset_flip(view, item):
|
||||
view.scene.addItem(item)
|
||||
item.do_flip()
|
||||
item.setSelected(True)
|
||||
view.on_action_reset_flip()
|
||||
assert item.flip() == 1
|
||||
|
||||
|
||||
def test_on_action_reset_crop(view, item):
|
||||
view.scene.addItem(item)
|
||||
item.crop = QtCore.QRectF(2, 2, 10, 10)
|
||||
assert item.crop == QtCore.QRectF(2, 2, 10, 10)
|
||||
item.setSelected(True)
|
||||
view.on_action_reset_crop()
|
||||
assert item.crop == QtCore.QRectF(0, 0, 0, 0)
|
||||
|
||||
|
||||
def test_on_action_reset_transforms(view, item):
|
||||
view.scene.addItem(item)
|
||||
item.crop = QtCore.QRectF(2, 2, 10, 10)
|
||||
item.do_flip()
|
||||
item.setRotation(90)
|
||||
item.setScale(2)
|
||||
assert item.crop == QtCore.QRectF(2, 2, 10, 10)
|
||||
item.setSelected(True)
|
||||
view.on_action_reset_transforms()
|
||||
assert item.crop == QtCore.QRectF(0, 0, 0, 0)
|
||||
assert item.flip() == 1
|
||||
assert item.rotation() == 0
|
||||
assert item.scale() == 1
|
||||
|
||||
|
||||
@patch('PyQt6.QtWidgets.QWidget.create')
|
||||
@patch('PyQt6.QtWidgets.QWidget.destroy')
|
||||
@patch('PyQt6.QtWidgets.QWidget.show')
|
||||
|
|
@ -619,6 +667,20 @@ def test_on_action_move_window_when_scene(cursor_mock, view):
|
|||
assert view.event_start == QtCore.QPointF(10.0, 20.0)
|
||||
|
||||
|
||||
def test_on_action_select_all(view, item):
|
||||
view.scene.addItem(item)
|
||||
item.setSelected(False)
|
||||
view.on_action_select_all()
|
||||
assert item.isSelected() is True
|
||||
|
||||
|
||||
def test_on_action_deselect_all(view, item):
|
||||
view.scene.addItem(item)
|
||||
item.setSelected(True)
|
||||
view.on_action_deselect_all()
|
||||
assert item.isSelected() is False
|
||||
|
||||
|
||||
def test_on_action_delete_items(view, item):
|
||||
view.scene.cancel_crop_mode = MagicMock()
|
||||
view.scene.addItem(item)
|
||||
|
|
|
|||
|
|
@ -1,8 +1,13 @@
|
|||
from unittest.mock import MagicMock
|
||||
from unittest.mock import MagicMock, patch
|
||||
|
||||
from PyQt6 import QtCore
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
|
||||
from beeref.widgets.welcome_overlay import RecentFilesModel
|
||||
from beeref.view import BeeGraphicsView
|
||||
from beeref.widgets.welcome_overlay import (
|
||||
RecentFilesModel,
|
||||
RecentFilesView,
|
||||
WelcomeOverlay,
|
||||
)
|
||||
|
||||
|
||||
def test_recent_files_model_rowcount(view):
|
||||
|
|
@ -23,3 +28,44 @@ def test_recent_files_model_data_fontrole(view):
|
|||
index.row.return_value = 1
|
||||
font = model.data(index, QtCore.Qt.ItemDataRole.FontRole)
|
||||
assert font.underline() is True
|
||||
|
||||
|
||||
@patch('beeref.widgets.welcome_overlay.BeeSettings.get_recent_files',
|
||||
return_value=[])
|
||||
def test_welcome_overlay_when_no_recent_files(qapp):
|
||||
parent = QtWidgets.QMainWindow()
|
||||
view = BeeGraphicsView(qapp, parent)
|
||||
overlay = WelcomeOverlay(view)
|
||||
overlay.show()
|
||||
assert overlay.layout.indexOf(overlay.files_layout) < 0
|
||||
|
||||
|
||||
def test_recent_files_view_size_hint(qapp):
|
||||
parent = QtWidgets.QMainWindow()
|
||||
files_view = RecentFilesView(parent)
|
||||
|
||||
files_view.sizeHintForRow = lambda i: 10 + i
|
||||
files_view.sizeHintForColumn = lambda i: 50 + i
|
||||
files_view.update_files(['foo.png', 'bar.png'])
|
||||
assert files_view.sizeHint() == QtCore.QSize(53, 25)
|
||||
|
||||
|
||||
@patch('beeref.widgets.welcome_overlay.BeeSettings.get_recent_files',
|
||||
return_value=['foo.bee', 'bar.bee'])
|
||||
def test_welcome_overlay_when_recent_files(qapp):
|
||||
parent = QtWidgets.QMainWindow()
|
||||
view = BeeGraphicsView(qapp, parent)
|
||||
overlay = WelcomeOverlay(view)
|
||||
overlay.show()
|
||||
assert overlay.layout.indexOf(overlay.files_layout) == 0
|
||||
|
||||
|
||||
@patch('PyQt6.QtWidgets.QGraphicsView.mousePressEvent')
|
||||
def test_mouse_press_when_move_window_active(mouse_event_mock, qapp):
|
||||
parent = QtWidgets.QMainWindow()
|
||||
view = BeeGraphicsView(qapp, parent)
|
||||
overlay = WelcomeOverlay(view)
|
||||
overlay.movewin_active = True
|
||||
overlay.mousePressEvent(MagicMock())
|
||||
assert overlay.movewin_active is False
|
||||
mouse_event_mock.assert_not_called()
|
||||
|
|
|
|||
Loading…
Reference in a new issue