Merge remote branch 'cros/upstream' into autotest-rebase
Merged to upstream trunk@5066, from trunk@4749.
There is no way I could enlist each individual CL from the upstream here since it will blow up the changelist description field.
BUG=
TEST=
Had patched this CL into a fresh cut client to avoid any side effect.
run_remote_test bvt from both emerged location and third_party/autotest/file.
Both test passed!
We should also keep any eye on this to see how it gets propagated into cautotest server.
TBR=dalecurtis
Change-Id: I72f2bc7a9de530178484aea1bfb5ace68bcad029
diff --git a/tko/job_serializer.py b/tko/job_serializer.py
old mode 100644
new mode 100755
diff --git a/tko/job_serializer_unittest.py b/tko/job_serializer_unittest.py
old mode 100644
new mode 100755
diff --git a/tko/parsers/version_1.py b/tko/parsers/version_1.py
index 111f7ef..7448c4f 100644
--- a/tko/parsers/version_1.py
+++ b/tko/parsers/version_1.py
@@ -70,11 +70,14 @@
val_type = "perf"
# parse the actual value into a dict
- if val_type == "attr":
- attr_dict[key] = value
- elif val_type == "perf" and re.search("^\d+(\.\d+)?$", value):
- perf_dict[key] = float(value)
- else:
+ try:
+ if val_type == "attr":
+ attr_dict[key] = value
+ elif val_type == "perf":
+ perf_dict[key] = float(value)
+ else:
+ raise ValueError
+ except ValueError:
msg = ("WARNING: line '%s' found in test "
"iteration keyval could not be parsed")
msg %= line
diff --git a/tko/parsers/version_1_unittest.py b/tko/parsers/version_1_unittest.py
index 72444c5..4114c59 100755
--- a/tko/parsers/version_1_unittest.py
+++ b/tko/parsers/version_1_unittest.py
@@ -220,8 +220,8 @@
def test_perf_entry(self):
- result = self.parse_line("perf-val{perf}=173")
- self.assertEqual(({}, {"perf-val": 173}), result)
+ result = self.parse_line("perf-val{perf}=-173")
+ self.assertEqual(({}, {"perf-val": -173}), result)
def test_attr_entry(self):
@@ -230,8 +230,8 @@
def test_untagged_is_perf(self):
- result = self.parse_line("untagged=678.5")
- self.assertEqual(({}, {"untagged": 678.5}), result)
+ result = self.parse_line("untagged=-678.5e5")
+ self.assertEqual(({}, {"untagged": -678.5e5}), result)
def test_invalid_tag_ignored(self):
@@ -240,12 +240,12 @@
def test_non_numeric_perf_ignored(self):
- result = self.parse_line("perf-val{perf}=NaN")
+ result = self.parse_line("perf-val{perf}=FooBar")
self.assertEqual(({}, {}), result)
def test_non_numeric_untagged_ignored(self):
- result = self.parse_line("untagged=NaN")
+ result = self.parse_line("untagged=FooBar")
self.assertEqual(({}, {}), result)