How to use test_info_attr method in uiautomator

Best Python code snippet using uiautomator

test_device_obj.py

Source:test_device_obj.py Github

copy

Full Screen

...51 self.jsonrpc.objInfo.return_value = info52 self.assertEqual(self.obj.info,53 info)54 self.jsonrpc.objInfo.assert_called_once_with(self.obj.selector)55 def test_info_attr(self):56 info = {'contentDescription': '',57 'checked': False,58 'scrollable': False,59 'text': '',60 'packageName': 'android',61 'selected': False,62 'enabled': True,63 'bounds': {'top': 0,64 'left': 0,65 'right': 720,66 'bottom': 1184},67 'className':68 'android.widget.FrameLayout',69 'focusable': False,...

Full Screen

Full Screen

siswrap_tests.py

Source:siswrap_tests.py Github

copy

Full Screen

...50 def test_creation(self):51 assert isinstance(self.report.conf_svc, ConfigurationService) is True52 assert isinstance(self.report.logger, Logger) is True53 # We should be able to access the ProcessInfo's attributes54 def test_info_attr(self):55 assert isinstance(self.report.info, ProcessInfo) is True56 assert self.report.info.runfolder == Helper.root + Helper.runfolder57 # And we should inherit from the base Wrapper class58 def test_inheritance(self):59 assert issubclass(ReportWrapper, Wrapper) is True60class TestWrapper(object):61 # Wrapper base class should be setup properly62 def test_creation(self, monkeypatch):63 def mocked_isdir(runpath):64 return True65 monkeypatch.setattr("os.path.isdir", mocked_isdir)66 wrapper = Wrapper(Helper.runfolder, Helper.conf, Helper.logger)67 assert isinstance(wrapper.info, ProcessInfo) is True68 assert isinstance(wrapper.conf_svc, ConfigurationService) is True69 assert isinstance(wrapper.logger, Logger) is True70 assert wrapper.QC_TYPE == "qc"71 assert wrapper.REPORT_TYPE == "report"72 # Run method should setup a ExecString for the calling object in question73 # and spawn a subprocess with it, as well as update the process info's74 # attributes.75 def test_run(self, monkeypatch):76 pass_mocked = True77 class MockedExecString(object):78 def __init__(self, wrapper, conf, runfolder):79 if pass_mocked:80 self.text = ["/bin/bash", "-c", "echo uggla"]81 else:82 self.text = ["/bin/uggla"]83 monkeypatch.setattr("siswrap.siswrap.ExecString", MockedExecString)84 w = Wrapper(Helper.runfolder, Helper.conf, Helper.logger)85 w.run()86 assert isinstance(w.info.proc, subprocess.Popen)87 assert w.info.state == "started"88 out, err = w.info.proc.communicate()89 assert out == "uggla\n"90 pass_mocked = False91 w.run()92 with pytest.raises(Exception) as err:93 out, err = w.info.proc.communicate()94 # Helper method should return the correct wrapper object for95 # different text inputs96 def test_new_wrapper(self):97 qc_wrap = Wrapper.new_wrapper("qc", Helper.runfolder,98 Helper.conf, Helper.logger)99 report_wrap = Wrapper.new_wrapper("report", Helper.runfolder,100 Helper.conf, Helper.logger)101 assert qc_wrap.type_txt == "qc"102 assert report_wrap.type_txt == "report"103 with pytest.raises(Exception) as err:104 Wrapper.new_wrapper("foo", Helper.runfolder,105 Helper.conf, Helper.logger)106 # Helper method should return the correct wrapper type in text107 # format for different URLs108 def test_url_to_type(self):109 test_urls = ["http://arteria1:1111/v1/api/qc/run/8312",110 "https://arteria12:3232/v2/api/report/run/3232",111 "http://testweb/api/1/qc/status",112 "http://testtest/api/v1/report/run"]113 test_types = ["qc", "report", "qc", "report"]114 for idx, url in enumerate(test_urls):115 assert Wrapper.url_to_type(url) == test_types[idx]116 with pytest.raises(Exception) as err:117 Wrapper.url_to_type("foo")118class TestQCWrapper(object):119 qc = QCWrapper(Helper.runfolder, Helper.conf, Helper.logger)120 # QCWrapper should be setup correctly121 def test_creation(self, monkeypatch):122 assert isinstance(self.qc.info, ProcessInfo) is True123 assert isinstance(self.qc.logger, Logger) is True124 assert isinstance(self.qc.conf_svc, ConfigurationService) is True125 # test the file copy126 dstdir = "/tmp/test_siswrap/runfolder_root/"127 testsrc = dstdir + "qc_file.txt"128 def mocked_get_setting(self, setting):129 if setting == "qc_file":130 return testsrc131 elif setting == "runfolder_root":132 return dstdir133 else:134 return setting135 # Create the src file136 import io137 if not os.path.isdir(dstdir + Helper.runfolder):138 os.makedirs(dstdir + Helper.runfolder)139 if not os.path.exists(testsrc):140 io.open(testsrc, 'a').close()141 monkeypatch.setattr("siswrap.siswrap.ConfigurationService.get_setting",142 mocked_get_setting)143 qc = QCWrapper(Helper.runfolder, Helper.conf, Helper.logger)144 assert os.path.exists(dstdir + Helper.runfolder +145 "/sisyphus_qc.xml") is True146 # remove the files147 import shutil148 shutil.rmtree(dstdir)149 # QCWrapper should be able to get the attributes from ProcessInfo150 def test_info_attr(self):151 assert isinstance(self.qc.info, ProcessInfo) is True152 assert self.qc.info.runfolder == Helper.root + Helper.runfolder153 # QCWrapper should inherit Wrapper154 def test_inheritance(self):155 assert issubclass(QCWrapper, Wrapper) is True156class TestExecString(object):157 # ExecString should be created with a text field containing the string158 # to be spawned in a subprocess later. String will be somewhat different159 # on which wrapper is calling. Settings read from the conf service.160 def test_creation(self, monkeypatch):161 class FooBar(object):162 def __init__(self):163 self.binary_conf_lookup = "foobar"164 def mocked_get_setting(self, setting):...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run uiautomator automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful