#!/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()