add iterations from keyval properly when parsing
Signed-off-by: Martin J. Bligh <mbligh@google.com>
git-svn-id: http://test.kernel.org/svn/autotest/trunk@679 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/tko/db.py b/tko/db.py
index 8017c9e..3322118 100644
--- a/tko/db.py
+++ b/tko/db.py
@@ -81,10 +81,19 @@
def insert_test(self, job, test):
kver = self.insert_kernel(test.kernel)
data = {'job_idx':job.index, 'test':test.testname,
- 'subdir':test.dir, 'kernel_idx':kver,
+ 'subdir':test.subdir, 'kernel_idx':kver,
'status':self.status_idx[test.status],
'reason':test.reason, 'machine':test.machine }
self.insert('tests', data)
+ test_idx = self.find_test(job.index, test.subdir)
+ data = { 'test_idx':test_idx }
+
+ for i in test.iterations:
+ data['iteration'] = i.index
+ for key in i.keyval:
+ data['attribute'] = key
+ data['value'] = i.keyval[key]
+ self.insert('iteration_result', data)
def lookup_kernel(self, kernel):
@@ -118,6 +127,14 @@
'url':patch.reference,
'hash':patch.hash})
+ def find_test(self, job_idx, subdir):
+ where = { 'job_idx':job_idx , 'subdir':subdir }
+ rows = self.select('test_idx', 'tests', where)
+ if rows:
+ return rows[0][0]
+ else:
+ return None
+
def find_job(self, tag):
rows = self.select('job_idx', 'jobs', {'tag': tag})