factory: Use `dict.items` instead of `six.iteritems`
`six.iteritems` is equivalent to `dict.items` in python3, so we can
migrate all of this.
BUG=chromium:999876
TEST=make test
Change-Id: I7218c416e694da41996ae3ace6ce23e6f9fcfb72
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/factory/+/2200487
Reviewed-by: Yilin Yang (kerker) <kerker@chromium.org>
Tested-by: Yilin Yang (kerker) <kerker@chromium.org>
Commit-Queue: Yilin Yang (kerker) <kerker@chromium.org>
diff --git a/py/gooftool/commands.py b/py/gooftool/commands.py
index 2f45eb2..55bae95 100755
--- a/py/gooftool/commands.py
+++ b/py/gooftool/commands.py
@@ -24,8 +24,6 @@
import time
import xmlrpc.client
-from six import iteritems
-
from cros.factory.gooftool.common import ExecFactoryPar
from cros.factory.gooftool.common import Shell
from cros.factory.gooftool.core import Gooftool
@@ -901,7 +899,7 @@
"""Get firmware hash from a file"""
if os.path.exists(options.file):
value_dict = chromeos_firmware.CalculateFirmwareHashes(options.file)
- for key, value in iteritems(value_dict):
+ for key, value in value_dict.items():
print(' %s: %s' % (key, value))
else:
raise Error('File does not exist: %s' % options.file)
diff --git a/py/gooftool/common.py b/py/gooftool/common.py
index cdfd590..2f905af 100644
--- a/py/gooftool/common.py
+++ b/py/gooftool/common.py
@@ -11,8 +11,6 @@
from subprocess import PIPE
from subprocess import Popen
-from six import iteritems
-
from cros.factory.test.env import paths
from cros.factory.utils import sys_utils
from cros.factory.utils.type_utils import Error
@@ -273,7 +271,7 @@
device = self.GetPrimaryDevicePath()
curr_attrs = self.GetCgptAttributes()
- for k, v in iteritems(attrs):
+ for k, v in attrs.items():
if curr_attrs.get(k) == v:
continue
if not self.shell('cgpt add %s -i %s -A %s' % (device, k, v)).success:
diff --git a/py/gooftool/core.py b/py/gooftool/core.py
index fa4160f..5f2400e 100644
--- a/py/gooftool/core.py
+++ b/py/gooftool/core.py
@@ -16,7 +16,6 @@
import tempfile
import time
-from six import iteritems
import yaml
from cros.factory.gooftool.bmpblk import unpack_bmpblock
@@ -311,7 +310,7 @@
# TPM device path has been changed in kernel 3.18.
if not os.path.exists(tpm_root):
tpm_root = legacy_tpm_root
- for key, value in iteritems(expected_status):
+ for key, value in expected_status.items():
if open(os.path.join(tpm_root, key)).read().strip() != value:
raise Error('TPM is not cleared.')
@@ -361,12 +360,12 @@
checked = []
known = required.copy()
known.update(optional)
- for k, v in iteritems(data):
+ for k, v in data.items():
if k in known:
checked.append(MatchWhole(k, known[k], v))
else:
# Try if matches optional_re
- for rk, rv in iteritems(optional_re):
+ for rk, rv in optional_re.items():
if MatchWhole(k, rk, k, raise_exception=False):
checked.append(MatchWhole(k, rv, v))
break
@@ -735,8 +734,8 @@
return any(name for name in known_names if k.startswith(name))
rw_vpd = self._vpd.GetAllData(partition=vpd.VPD_READWRITE_PARTITION_NAME)
- dot_entries = dict((k, v) for k, v in iteritems(rw_vpd) if '.' in k)
- entries = dict((k, v) for k, v in iteritems(dot_entries)
+ dot_entries = dict((k, v) for k, v in rw_vpd.items() if '.' in k)
+ entries = dict((k, v) for k, v in dot_entries.items()
if _IsFactoryVPD(k))
unknown_keys = set(dot_entries) - set(entries)
if unknown_keys:
diff --git a/py/gooftool/gsctool.py b/py/gooftool/gsctool.py
index 0ea428f..ac74ea2 100644
--- a/py/gooftool/gsctool.py
+++ b/py/gooftool/gsctool.py
@@ -4,8 +4,6 @@
import re
-from six import iteritems
-
from cros.factory.gooftool import common as gooftool_common
from cros.factory.utils import type_utils
@@ -115,10 +113,10 @@
translated_kwargs = {}
for line in cmd_result.stdout.splitlines():
line = line.strip()
- for field_name, attr_name in iteritems(fields):
+ for field_name, attr_name in fields.items():
if line.startswith(field_name + '='):
translated_kwargs[attr_name] = line[len(field_name) + 1:]
- missing_fields = [field_name for field_name, attr_name in iteritems(fields)
+ missing_fields = [field_name for field_name, attr_name in fields.items()
if attr_name not in translated_kwargs]
if missing_fields:
raise GSCToolError('%r Field(s) are missing, gsctool stdout=%r' %
diff --git a/py/gooftool/gsctool_unittest.py b/py/gooftool/gsctool_unittest.py
index 16e2283..e4dda62 100755
--- a/py/gooftool/gsctool_unittest.py
+++ b/py/gooftool/gsctool_unittest.py
@@ -6,7 +6,6 @@
import unittest
import mock
-from six import iteritems
from cros.factory.gooftool import common
from cros.factory.gooftool import gsctool
@@ -102,7 +101,7 @@
'BID_FLAGS': '0000ff00',
'BID_RLZ': 'ABCD'}
self._SetGSCToolUtilityResult(
- stdout=(''.join('%s=%s\n' % (k, v) for k, v in iteritems(fields))))
+ stdout=(''.join('%s=%s\n' % (k, v) for k, v in fields.items())))
board_id = self.gsctool.GetBoardID()
self._CheckCalledCommand(['/usr/sbin/gsctool', '-a', '-M', '-i'])
self.assertEqual(board_id.type, 0x41424344)
@@ -116,7 +115,7 @@
'BID_FLAGS': '0000ff00',
'BID_RLZ': '????'}
self._SetGSCToolUtilityResult(
- stdout=(''.join('%s=%s\n' % (k, v) for k, v in iteritems(fields2))))
+ stdout=(''.join('%s=%s\n' % (k, v) for k, v in fields2.items())))
board_id = self.gsctool.GetBoardID()
self._CheckCalledCommand(['/usr/sbin/gsctool', '-a', '-M', '-i'])
self.assertEqual(board_id.type, 0xffffffff)
@@ -125,13 +124,13 @@
# BID_TYPE_INV should be complement to BID_TYPE
bad_fields = dict(fields, BID_TYPE_INV='aabbccdd')
self._SetGSCToolUtilityResult(
- stdout=(''.join('%s=%s\n' % (k, v) for k, v in iteritems(bad_fields))))
+ stdout=(''.join('%s=%s\n' % (k, v) for k, v in bad_fields.items())))
self.assertRaises(gsctool.GSCToolError, self.gsctool.GetBoardID)
# BID_TYPE should be the ascii codes of BID_RLZ
bad_fields = dict(fields, BID_RLZ='XXYY')
self._SetGSCToolUtilityResult(
- stdout=(''.join('%s=%s\n' % (k, v) for k, v in iteritems(bad_fields))))
+ stdout=(''.join('%s=%s\n' % (k, v) for k, v in bad_fields.items())))
self.assertRaises(gsctool.GSCToolError, self.gsctool.GetBoardID)
self._SetGSCToolUtilityResult(status=1)