Advertisement
Guest User

Untitled

a guest
Mar 18th, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.26 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. from com.samsung.stp.engine.TouchPressType import *
  3. from com.samsung.stp.engine import TestcaseActivity, ProjectsManager
  4. from stp_lib.devices import get_selected_device, get_selected_manager_and_id
  5. from com.samsung.stp.engine.debugger import StpExecutionDebugger
  6. from oracle.jrockit.jfr.settings import PresetFile
  7.  
  8. ldb_BG5YOGK7z2ri0ed87e23 = StpExecutionDebugger.getLineDebugger()
  9. dev = get_selected_device()
  10. testcaseActivity = TestcaseActivity(ProjectsManager.getInstance().getCurrentProject())
  11.  
  12. dev.setTestResult(False)
  13. class PrepareDevice:
  14.     def __init__(self, dev = None):
  15.         if dev is None:
  16.             self.dev = get_selected_device()
  17.         else:
  18.             self.dev = dev
  19.         self.pictureNumber = 0
  20.     def working_device(self):
  21.         dim = self.dev.getScreenDimensions()
  22.         self.activity_on_top()
  23.         print "Working on device with resolution and screen density: %d %d %d" % (dim.getHeight(), dim.getWidth(), self.dev.getScreenDensity())  
  24.     def activity_on_top(self):
  25.         activity= self.dev.getTopActivity()
  26.         print "Top activity now %s"% activity
  27.     def making_screenshots(self):
  28.         filename = 'data_%d.png'%(self.pictureNumber,)
  29.         print filename
  30.         self.dev.saveSnapshot(filename)  
  31.         self.pictureNumber = self.pictureNumber + 1
  32.     def compare_screenshots(self):
  33.         print("Test1")    
  34.         if self.dev.imageCompare(u"data1.png", u"data2.png", 99):
  35.             self.dev.addTextResult(u"Images are the same", True)
  36.         else:
  37.             self.dev.addTextResult(u"Images are different", False)
  38.     def reboot_device(self):
  39.         start = time.time()
  40.         self.dev.reboot("", 600000)
  41.         print "Reboot in %ds" % (time.time() - start) # print reboot time to console
  42. #can be expanded
  43.                
  44. Device1 = PrepareDevice()
  45. Device1.working_device()
  46. Device1.activity_on_top()
  47.  
  48. #Actions description:
  49. #0-load Preset
  50. #1-save Preset
  51. #2-clear slots
  52. #3-show values
  53. #4-type name
  54. #5-ok to save
  55. #6-ok to overwrite
  56. #7-cancel overwrite
  57. action_types=[[u"sloadTextView140",u"title",0],[u"ssaveTextView883",u"title",1],[u"sclearTextView020",u"title",2],[u"sshowTextView383",u"title",3],[u"seffectDefaultValueEditText605",u"presets_dialog_name_edit",0],[u"ssaveButton688",u"button_ok",0],[u"sokButton030",u"button1",0],[u"scancelButton872",u"button2",0]]
  58. class MenuFinder():
  59.     def __init__(self, dev = None):
  60.         if dev is None:
  61.             self.dev = get_selected_device()
  62.         else:
  63.             self.dev = dev
  64.         self.talkback_object=u"smoreOverflowMenuButton622"  
  65.         self.talkback=u"More options"
  66.     def click_s_object(self):
  67.         self.dev.clickSObject(self.talkback_object)
  68.     def wait_for_action(self):
  69.         dev.sleep(1000)
  70.     def enter_menu(self):
  71.         self.dev.setSearchTalkback(self.talkback_object,self.talkback,None)
  72.         self.wait_for_action()
  73.         self.click_s_object()
  74.  
  75. class ActionPerform():
  76.     def __init__(self, name, type_name, index, dev = None):
  77.         if dev is None:
  78.             self.dev = get_selected_device()
  79.         else:
  80.             self.dev = dev
  81.         self.action = self.dev.setSearchId(name,type_name,index)
  82.         self.action_selector = [name, type_name, index]    
  83.     def wait_for_action(self):
  84.         dev.sleep(1000)
  85.     def action_performer(self):
  86.         self.wait_for_action()
  87.         self.click_action()
  88.     def click_action(self):
  89.         button= self.dev.clickSObject(self.action_selector[0], True)
  90.        
  91. actions = [ActionPerform(action[0], action[1], action[2]) for action in action_types]            
  92. #Device1.making_screenshots()    
  93. class NameTypoSave():
  94.     def __init__(self, dev = None):
  95.         if dev is None:
  96.             self.dev = get_selected_device()
  97.         else:
  98.             self.dev = dev
  99.         self.nameNumber = 0    
  100.     def type_name(self):
  101.         typo = 'erpreset_%d'%(self.nameNumber,)
  102.         self.dev.type(typo)
  103.         self.nameNumber = self.nameNumber + 1
  104. for i in range(4):
  105.     MenuFinder().enter_menu()
  106.     actions[1].action_performer()
  107.     actions[4].action_performer()
  108.     NameTypoSave().type_name()
  109.     NameTypoSave().type_name()
  110.     dev.press(u"KEYCODE_BACK",DOWN_AND_UP)
  111.     actions[5].action_performer()
  112.     actions[6].action_performer()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement