Esempio n. 1
0
 def test_drop_invalid_drag_on_design_view(self):
     mime_data = QMimeData()
     gv = self.toolbox.ui.graphicsView
     pos = QPoint(0, 0)
     event = QDropEvent(pos, Qt.CopyAction, mime_data, Qt.NoButton,
                        Qt.NoModifier)
     with mock.patch('PySide2.QtWidgets.QGraphicsSceneDragDropEvent.source'
                     ) as mock_drop_event_source, mock.patch.object(
                         self.toolbox, "project"), mock.patch.object(
                             self.toolbox, "show_add_project_item_form"
                         ) as mock_show_add_project_item_form:
         mock_drop_event_source.return_value = "Invalid source"
         gv.dropEvent(event)
         mock_show_add_project_item_form.assert_not_called()
     item_shadow = gv.scene().item_shadow
     self.assertIsNone(item_shadow)
Esempio n. 2
0
 def test_drop_project_item_on_design_view(self):
     mime_data = QMimeData()
     item_type = next(iter(self.toolbox.item_factories))
     mime_data.setText(f"{item_type},spec")
     gv = self.toolbox.ui.graphicsView
     scene_pos = QPointF(44, 20)
     pos = gv.mapFromScene(scene_pos)
     event = QDropEvent(pos, Qt.CopyAction, mime_data, Qt.NoButton,
                        Qt.NoModifier)
     with mock.patch('PySide2.QtWidgets.QGraphicsSceneDragDropEvent.source'
                     ) as mock_drop_event_source, mock.patch.object(
                         self.toolbox, "project"), mock.patch.object(
                             self.toolbox, "show_add_project_item_form"
                         ) as mock_show_add_project_item_form:
         mock_drop_event_source.return_value = ProjectItemDragMixin()
         gv.dropEvent(event)
         mock_show_add_project_item_form.assert_called_once()
         mock_show_add_project_item_form.assert_called_with(item_type,
                                                            scene_pos.x(),
                                                            scene_pos.y(),
                                                            spec="spec")
     item_shadow = gv.scene().item_shadow
     self.assertTrue(item_shadow.isVisible())
     self.assertEqual(item_shadow.pos(), scene_pos)