mirror of
				https://github.com/ARM-software/workload-automation.git
				synced 2025-10-29 22:24:51 +00:00 
			
		
		
		
	revent: Added record and replay commands
Added two commands to WA to record and replay input events using revent. As part of this also added the ability to get a device model from android and linux device. This may need to be improved in the future.
This commit is contained in:
		| @@ -645,6 +645,12 @@ class AndroidDevice(BaseLinuxDevice):  # pylint: disable=W0223 | ||||
|             if se_status == 'Enforcing': | ||||
|                 self.execute('setenforce 0', as_root=True) | ||||
|  | ||||
|     def get_device_model(self): | ||||
|         try: | ||||
|             return self.getprop(prop='ro.product.device') | ||||
|         except KeyError: | ||||
|             return None | ||||
|  | ||||
|     # Internal methods: do not use outside of the class. | ||||
|  | ||||
|     def _update_build_properties(self, filepath, props): | ||||
|   | ||||
| @@ -302,7 +302,7 @@ class ReventWorkload(Workload): | ||||
|         if _call_super: | ||||
|             super(ReventWorkload, self).__init__(device, **kwargs) | ||||
|         devpath = self.device.path | ||||
|         self.on_device_revent_binary = devpath.join(self.device.working_directory, 'revent') | ||||
|         self.on_device_revent_binary = devpath.join(self.device.binaries_directory, 'revent') | ||||
|         self.on_device_setup_revent = devpath.join(self.device.working_directory, '{}.setup.revent'.format(self.device.name)) | ||||
|         self.on_device_run_revent = devpath.join(self.device.working_directory, '{}.run.revent'.format(self.device.name)) | ||||
|         self.setup_timeout = kwargs.get('setup_timeout', self.default_setup_timeout) | ||||
|   | ||||
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							| @@ -536,6 +536,14 @@ class BaseLinuxDevice(Device):  # pylint: disable=abstract-method | ||||
|             command = 'cd {} && {}'.format(in_directory, command) | ||||
|         return self.execute(command, background=background, as_root=as_root, timeout=timeout) | ||||
|  | ||||
|     def get_device_model(self): | ||||
|         if self.file_exists("/proc/device-tree/model"): | ||||
|             raw_model = self.execute("cat /proc/device-tree/model") | ||||
|             return '_'.join(raw_model.split()[:2]) | ||||
|         # Right now we don't know any other way to get device model | ||||
|         # info in linux on arm platforms | ||||
|         return None | ||||
|  | ||||
|     # internal methods | ||||
|  | ||||
|     def _check_ready(self): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user