コード例 #1
0
ファイル: gob_tests.py プロジェクト: JeffAMcGee/friendloc
class TestMultiProcEnv(unittest.TestCase, BaseGobTests):
    def setUp(self):
        path = clean_data_dir()

        self.env = MultiProcEnv(path)
        self.gob = Gob(self.env)
        create_jobs(self.gob)

    def test_map(self):
        self.env.save('counter.2',xrange(2,100,10))
        self.env.save('counter.3',xrange(3,100,10))
        self.gob.run_job('expand')
        first = self.env.load('expand.2').next()
        self.assertEqual( first, {'digits':(2,),'num':2} )
コード例 #2
0
ファイル: gob_tests.py プロジェクト: JeffAMcGee/friendloc
class TestSimpleEnv(unittest.TestCase, BaseGobTests):
    def setUp(self):
        self.env = SimpleEnv()
        self.gob = Gob(self.env)
        create_jobs(self.gob)
        SimpleEnv.THE_FS = {}
        SimpleEnv.JOB_DB = {}

    def test_sourceless(self):
        self.gob.run_job('sourceless_counter')
        twos = range(2,100,10)
        threes = range(3,100,10)
        self.assertEqual(SimpleEnv.THE_FS['sourceless_counter.2'], twos)
        self.assertEqual(SimpleEnv.THE_FS['sourceless_counter.3'], threes)

    def test_multi_source(self):
        twos = range(2,100,10)
        threes = range(3,100,10)
        SimpleEnv.THE_FS['counter.2'] = twos
        SimpleEnv.THE_FS['counter.3'] = threes
        self.gob.run_job('expand')
        self.gob.run_job('take')
        self.gob.run_job('combine_inputs')

        comb3 = SimpleEnv.THE_FS['combine_inputs.3']
        self.assertEqual(comb3, [(43,)])

    def test_split_saver(self):
        self.gob.run_job('counter')
        self.assertEqual(SimpleEnv.THE_FS['counter.2'],range(2,100,10))

    def test_split_load(self):
        SimpleEnv.THE_FS['counter.2'] = range(2,100,10)
        SimpleEnv.THE_FS['counter.3'] = range(3,100,10)
        self.gob.run_job('expand')

        exp2 = SimpleEnv.THE_FS['expand.2']
        self.assertEqual( exp2[0], {'digits':[2],'num':2} )
        self.assertEqual( len(exp2), 10 )
        exp3 = SimpleEnv.THE_FS['expand.3']
        self.assertEqual( exp3[9], {'digits':[9,3],'num':93} )

    def test_list_reduce(self):
        SimpleEnv.THE_FS['expand.2'] = [
            dict(num=32,digits=(3,2)),
            dict(num=42,digits=(4,2)),
            dict(num=47,digits=(4,7)),
            ]
        SimpleEnv.THE_FS['expand.3'] = [
            dict(num=43,digits=(4,3)),
            dict(num=53,digits=(5,3)),
            ]
        self.gob.run_job('take')
        taken = SimpleEnv.THE_FS['take']
        self.assertEqual( taken, [(2, (42, 47)), (3, (43,))] )

    def test_no_output(self):
        SimpleEnv.THE_FS['take'] = [(2, [42, 47]), (3, [43])]
        self.gob.run_job('stash_results')
        self.assertEqual(set(self.result_data[2]), {42,47})
コード例 #3
0
ファイル: gob_tests.py プロジェクト: JeffAMcGee/friendloc
    def setUp(self):
        path = clean_data_dir()

        self.env = MultiProcEnv(path)
        self.gob = Gob(self.env)
        create_jobs(self.gob)
コード例 #4
0
ファイル: gob_tests.py プロジェクト: JeffAMcGee/friendloc
 def setUp(self):
     self.env = SimpleEnv()
     self.gob = Gob(self.env)
     create_jobs(self.gob)
     SimpleEnv.THE_FS = {}
     SimpleEnv.JOB_DB = {}