Salome HOME
Sort SQUISH cases to suites
[modules/shaper.git] / test.squish / suite_FEATURE_REVOLUTION / tst_revolution_001 / test.py
1 def main():
2     #[project] NewGEOM
3     #[Scenario] Revolution_001
4     #[Topic] 'Revolution by angles' functionality
5     #[Tested functionality] 
6     #[Summary description]
7     #[Expected results]
8     #[General comments]
9     
10     source(findFile("scripts", "common.py"))
11     
12     #[section] Application start
13     #[step] Launch SALOME
14     startApplication("salome_run.sh")
15
16     set_defaults()
17     
18     #[step] Open 'for_revolution_001.hdf'
19     open(DATA_PATH + "/for_revolution_001.hdf")
20     
21     #[step] Activate NewGeom
22     clickButton(waitForObject(":SALOME*.NewGeom_QToolButton"))
23
24     # [step] Activate Part_1
25     waitForObjectItem(":Object browser_XGUI_DataTree", "Part\\_1 (Not loaded)")
26     clickItem(":Object browser_XGUI_DataTree", "Part\\_1 (Not loaded)", 71, 10, 0, Qt.LeftButton)
27     openItemContextMenu(waitForObject(":Object browser_XGUI_DataTree"), "Part\\_1 (Not loaded)", 70, 9, 0)
28     activateItem(waitForObjectItem(":_QMenu", "Activate"))
29
30     
31     #[step] Fit all
32     fit_all()
33     
34
35     # [step] Execute revolution by angles 
36     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Features"))
37     mouseClick(waitForObjectItem(":_QMenu", "Revolution"))
38     
39     #[step] Click '-OZ' button
40     clickButton(waitForObject(":SALOME*.+OY_QToolButton"))
41     
42     #[step] Fit all
43     fit_all()
44
45     # [step] Select skecth for revolution
46     mouseClick(waitForObject(":Revolution.Select a sketch face_QListWidget"), 77, 38, 0, Qt.LeftButton)
47     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), 440, 221, 0, Qt.LeftButton)
48     # [step] Select vector
49     mouseClick(waitForObject(":Revolution_QLineEdit"), 116, 11, 0, Qt.LeftButton)
50     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"),306, 399, 0, Qt.LeftButton)
51     
52     #[step] Input angle 'To'
53     type(waitForObject(":Revolution.to_angle_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
54     type(waitForObject(":Revolution.to_angle_ModuleBase_ParamSpinBox"), 90)
55     
56     #[step] Input angle 'From'
57     type(waitForObject(":Revolution.from_angle_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
58     type(waitForObject(":Revolution.from_angle_ModuleBase_ParamSpinBox"), 120)
59     
60     #[step] Rotate the model
61     mouseDrag(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), 546, 182, -154, 50, 67108866, Qt.RightButton)
62    
63     #[step] Fit all
64     fit_all()
65     
66     #[check] Check that preview is updated
67     test.vp("VP1")
68     mouseClick(waitForObject(":Revolution.qt_spinbox_lineedit_QLineEdit"), 58, 8, 0, Qt.LeftButton)
69
70     # [step] Input new angle 'To'
71     mouseClick(waitForObject(":Revolution.qt_spinbox_lineedit_QLineEdit"), 58, 8, 0, Qt.LeftButton)
72     type(waitForObject(":Revolution.to_angle_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
73     type(waitForObject(":Revolution.to_angle_ModuleBase_ParamSpinBox"), "<Delete>")
74
75     #[step] Input new angle 'From'
76     mouseClick(waitForObject(":Revolution.qt_spinbox_lineedit_QLineEdit_2"), 52, 12, 0, Qt.LeftButton)
77     type(waitForObject(":Revolution.from_angle_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
78     type(waitForObject(":Revolution.from_angle_ModuleBase_ParamSpinBox"), 360)
79
80     #[step] Ok
81     clickButton(waitForObject(":Revolution.property_panel_ok_QToolButton"))
82    
83     #[step] Fit all
84     fit_all()
85     
86     #[check] Check that operation has been executed successfully
87     test.vp("VP2")
88    
89     # [step] Close application without saving
90     close_application()