From c313529f5749ef9eb1a684a393b246d83365fb7b Mon Sep 17 00:00:00 2001 From: eso Date: Fri, 28 Aug 2015 11:49:38 +0300 Subject: [PATCH] Add test partition_001 --- .../shared/testdata/for_partition_001.hdf | Bin 0 -> 36060 bytes test.squish/suite_ISSUES_SALOME/objects.map | 3 ++ .../shared/scripts/common.py | 11 +++++ .../tst_partition_001/test.py | 44 ++++++++++++++++++ .../tst_partition_001/verificationPoints/VP1 | 1 + 5 files changed, 59 insertions(+) create mode 100644 test.squish/shared/testdata/for_partition_001.hdf create mode 100644 test.squish/suite_ISSUES_SALOME/tst_partition_001/test.py create mode 100644 test.squish/suite_ISSUES_SALOME/tst_partition_001/verificationPoints/VP1 diff --git a/test.squish/shared/testdata/for_partition_001.hdf b/test.squish/shared/testdata/for_partition_001.hdf new file mode 100644 index 0000000000000000000000000000000000000000..4f86f2957957bae4a7626f46e67f1394079da3f1 GIT binary patch literal 36060 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 lIkL&S`G%)8`xD z96$b5mmHi&1;g;}({35YrOy$Wz@>xWR8nc%&4{&^w<&o7$8IiOryfvcySaoqw|hZ@ zN$7Fg&C+C-bKE~(@$F{J`Ip@>8ZxFi+S2I{@axi_=cMslMmV^R?Up;6)7);iY;KMb zp)SUix+JH0+wGQNY{Fc@D~xX0ZZRWe(zaX1vp@27G*35-t=sEV!cmp&W?%wzRN0#C#uuii%J)u`rw=sFOie`n<$JfFo+x+BmJ4H} zvk0`61@%uwXw!ko*|DbaskZhe1JYEUoo<>{e^O(%X|6mw*EoCd(B$mirrEutmGZb^ zjpNT_H0_zLjLhJ7fKKvTB_qwvEscA}_e8lvZEY>ht?h+&{`C-G<=Wcg?aOkP869tI zXlY|rzvyhxmccW!sldpu5L5$W<_p% zUe6)VBdg7n&%D!AG75Pve=6hoBxBeK$F6m5Acsv-)_;!jK4WPash57DpQDIh$^N#z zrTUgNo9>>sR+p2*t>^BqF4tkYOAl0+JJEY<`IXp1%KH843FB8XQd{Cg_p5K5JwCK( z54eE)8=+6WEbUS29Otx$w4X~}I?>~QQNQDB0XfI{sDYK^o4I!!-+4l`T6s%8agwtB zJpPo4QyHmeKGE~I{4HO(`@CSzu|m5^d#9<4zg;-#rNnjV;q?Aj8n>2TiG8K4->*LP zvdsUr>>;0|N?E@>K5OhDBef@;=y4|gZqK33d9!VoD&=zj^muv8j=rAG&bD=3T`jF^ zdp36WtZiu-->`OL+xnih&CTnZdpg%QZ@9j_-2mG0_HQNY4tYP=ArrsIQs2MzkCpPr zD&-QG#rwBd;?-Ho{afw_lGnzA^8@k2!Q*76T6yJGGmn(@=atWyydont(21T`YT2XB T*h9+t?QvyA50#NG4}1I{uCdd} literal 0 HcmV?d00001 diff --git a/test.squish/suite_ISSUES_SALOME/objects.map b/test.squish/suite_ISSUES_SALOME/objects.map index f697db972..a6c678267 100644 --- a/test.squish/suite_ISSUES_SALOME/objects.map +++ b/test.squish/suite_ISSUES_SALOME/objects.map @@ -119,6 +119,8 @@ :Parameter_ExpressionEditor {container=':SALOME*.Parameter_XGUI_PropertyPanel' type='ExpressionEditor' unnamed='1' visible='1'} :Parameter_QLineEdit {container=':SALOME*.Parameter_XGUI_PropertyPanel' type='QLineEdit' unnamed='1' visible='1'} :Part_QMenu {title='Part' type='QMenu' unnamed='1' visible='1'} +:Partition.Main objects_QLabel {container=':SALOME*.Partition_XGUI_PropertyPanel' text='Main objects' type='QLabel' unnamed='1' visible='1'} +:Partition.Main objects_QListWidget {aboveWidget=':Partition.Main objects_QLabel' container=':SALOME*.Partition_XGUI_PropertyPanel' type='QListWidget' unnamed='1' visible='1'} :Partition.Tool object_QLabel {container=':SALOME*.Partition_XGUI_PropertyPanel' text='Tool object' type='QLabel' unnamed='1' visible='1'} :Partition.Tool object_QListWidget {aboveWidget=':Partition.Tool object_QLabel' container=':SALOME*.Partition_XGUI_PropertyPanel' type='QListWidget' unnamed='1' visible='1'} :Partition.property_panel_ok_QToolButton {container=':SALOME*.Partition_XGUI_PropertyPanel' name='property_panel_ok' type='QToolButton' visible='1'} @@ -279,6 +281,7 @@ :_QDialog {type='QDialog' unnamed='1' visible='1'} :_QExpandingLineEdit {columnIndex='0' container=':Object browser_XGUI_DataTree' rowIndex='0' type='QExpandingLineEdit' unnamed='1' visible='1'} :_QMenu {type='QMenu' unnamed='1' visible='1'} +:_QtxMenu {type='QtxMenu' unnamed='1' visible='1'} :fileNameEdit_QLineEdit {buddy=':Save File.File name:_QLabel' name='fileNameEdit' type='QLineEdit' visible='1'} :fileNameEdit_QLineEdit_2 {buddy=':Open File.File name:_QLabel' name='fileNameEdit' type='QLineEdit' visible='1'} :frame.stackedWidget_QStackedWidget {container=':splitter.frame_QFrame' name='stackedWidget' type='QStackedWidget' visible='1'} diff --git a/test.squish/suite_ISSUES_SALOME/shared/scripts/common.py b/test.squish/suite_ISSUES_SALOME/shared/scripts/common.py index 4a1b675ec..6d1f9de97 100644 --- a/test.squish/suite_ISSUES_SALOME/shared/scripts/common.py +++ b/test.squish/suite_ISSUES_SALOME/shared/scripts/common.py @@ -362,6 +362,17 @@ def tangent(point_1, point_2): mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_2[0], point_2[1], 0, Qt.LeftButton) clickButton(waitForObject(":Tangent.property_panel_cancel_QToolButton")) + +def partition(main_objects, tool_object): + mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Features")) + mouseClick(waitForObjectItem(":_QMenu", "Partition")) + + for main_object in main_objects: + mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), main_object[0], main_object[1], 33554432, Qt.LeftButton) + + mouseClick(waitForObject(":Partition.Tool object_QListWidget"), 116, 69, 0, Qt.LeftButton) + mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), tool_object[0], tool_object[1], 0, Qt.LeftButton) + clickButton(waitForObject(":Partition.property_panel_ok_QToolButton")) diff --git a/test.squish/suite_ISSUES_SALOME/tst_partition_001/test.py b/test.squish/suite_ISSUES_SALOME/tst_partition_001/test.py new file mode 100644 index 000000000..eb6121968 --- /dev/null +++ b/test.squish/suite_ISSUES_SALOME/tst_partition_001/test.py @@ -0,0 +1,44 @@ +def main(): + #[project] NewGEOM + #[Scenario] Partition_001 + #[Topic] 'Partition' functionality + #[Tested functionality] + #[Summary description] + #[Expected results] + #[General comments] + + source(findFile("scripts", "common.py")) + + #[section] Application start + #[step] Launch SALOME + startApplication("salome_run.sh") + + set_defaults() + + #[step] Open 'for_partition_001.hdf' + open(DATA_PATH + "/for_partition_001.hdf") + + #[step] Activate NewGeom + clickButton(waitForObject(":SALOME*.NewGeom_QToolButton")) + + # [step] Activate Part_1 + waitForObjectItem(":Object browser_XGUI_DataTree", "Not loaded Part\\_1") + clickItem(":Object browser_XGUI_DataTree", "Not loaded Part\\_1", 71, 10, 0, Qt.LeftButton) + openItemContextMenu(waitForObject(":Object browser_XGUI_DataTree"), "Not loaded Part\\_1", 70, 9, 0) + activateItem(waitForObjectItem(":_QMenu", "Activate")) + + #[step] Fit all + fit_all() + partition([(291, 188)], (178, 205)) + partition([(275, 173), (255, 323)], (272, 94)) + + #[step] Hide one of parts obtained in the viewer: select it, call context menu - Hide + mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), 291, 198, 0, Qt.LeftButton) + mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), 291, 198, 0, Qt.RightButton) + activateItem(waitForObjectItem(":_QtxMenu", "Hide")) + + #[check] Check that partition has been executed successfully + test.vp("VP1") + + # [step] Close application without saving + close_application() diff --git a/test.squish/suite_ISSUES_SALOME/tst_partition_001/verificationPoints/VP1 b/test.squish/suite_ISSUES_SALOME/tst_partition_001/verificationPoints/VP1 new file mode 100644 index 000000000..d2813d41f --- /dev/null +++ b/test.squish/suite_ISSUES_SALOME/tst_partition_001/verificationPoints/VP1 @@ -0,0 +1 @@ +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 \ No newline at end of file -- 2.39.2