blob: 94cbac8dcdcdef65f675538a4c3b6b6be0992c95 [file] [log] [blame] [edit]
#!/usr/bin/python -S
"""
task_spec_test.py: Tests for task_spec.py
"""
import cStringIO
import unittest
import task_spec # module under test
class TaskSpecTest(unittest.TestCase):
def testCountReports(self):
f = cStringIO.StringIO("""\
1,2
3,4
5,6
""")
c = task_spec.CountReports(f)
self.assertEqual(9, c)
def testDist(self):
# NOTE: These files are opened, in order to count the reports. Maybe skip
# that step.
f = cStringIO.StringIO("""\
_tmp/counts/2015-12-01/exp_counts.csv
_tmp/counts/2015-12-01/gauss_counts.csv
_tmp/counts/2015-12-02/exp_counts.csv
_tmp/counts/2015-12-02/gauss_counts.csv
""")
input_iter = task_spec.DistInputIter(f)
#for row in input_iter:
# print row
field_id_lookup = {}
# var name -> map filename
f = cStringIO.StringIO("""\
var,map_filename
exp,map.csv
unif,map.csv
gauss,map.csv
""")
dist_maps = task_spec.DistMapLookup(f, '_tmp/maps')
f2 = cStringIO.StringIO("""\
metric,var,var_type,params
exp,,string,params
unif,,string,params
gauss,,string,params
""")
var_schema = task_spec.VarSchema(f2, '_tmp/config')
for row in task_spec.DistTaskSpec(
input_iter, field_id_lookup, var_schema, dist_maps, None):
print row
if __name__ == '__main__':
unittest.main()