def test_get_hid(input_data, expected_output): test_fw = Firmware(binary=b'foo') test_fw.device_name = 'test_device' test_fw.vendor = 'foo' test_fw.version = '1.0' test_fw.set_part_name(input_data) assert test_fw.get_hid() == expected_output
def _convert_to_firmware(self, entry: dict, analysis_filter: List[str] = None) -> Firmware: firmware = Firmware() firmware.uid = entry['_id'] firmware.size = entry['size'] firmware.file_name = entry['file_name'] firmware.device_name = entry['device_name'] firmware.device_class = entry['device_class'] firmware.release_date = convert_time_to_str(entry['release_date']) firmware.vendor = entry['vendor'] firmware.version = entry['version'] firmware.processed_analysis = self.retrieve_analysis(entry['processed_analysis'], analysis_filter=analysis_filter) firmware.files_included = set(entry['files_included']) firmware.virtual_file_path = entry['virtual_file_path'] firmware.tags = entry['tags'] if 'tags' in entry else dict() firmware.analysis_tags = self._collect_analysis_tags_from_children(firmware.uid) try: # for backwards compatibility firmware.set_part_name(entry['device_part']) except KeyError: firmware.set_part_name('complete') if 'comments' in entry: # for backwards compatibility firmware.comments = entry['comments'] return firmware