def resolve_os_id(root, _info): os = root.find('os') if os is not None: return parse_uuid(os.get('id')) return None
def resolve_uuid(root, _info): return parse_uuid(root.get('id'))
def resolve_asset_id(root, _info): asset = root.find('asset') return parse_uuid(asset.get('asset_id'))
def resolve_source_id(root, _info): source = root.find('source') if source is not None: return parse_uuid(source.get('id')) return None
def resolve_uuid(root, _info): return parse_uuid(root.outer_report.get('id'))
def resolve_report_id(root, _info): report = root.find('report') if report is not None: return parse_uuid(root.find('report').get('id'))
def test_invalid_uuid(self): with self.assertRaises(ValueError): parse_uuid('foo')
def test_valid_uuid(self): uuid = parse_uuid('75d23ba8-3d23-11ea-858e-b7c2cb43e815') self.assertIsInstance(uuid, UUID) self.assertEqual(str(uuid), '75d23ba8-3d23-11ea-858e-b7c2cb43e815')
def test_none(self): self.assertIsNone(parse_uuid(None)) self.assertIsNone(parse_uuid(''))
def resolve_host_id(root, _info): host = root.find('host') return parse_uuid(host.find('asset').get('id'))
def resolve_result(root, _info): return parse_uuid(root.find('result').get('id'))