Example #1
0
    def generate_combinations(self,case_count=1):
        
        
        
        if self.algorithm=='dfs':
            self.all_combination = get_valid_dfs_dict_combinations(self.parameters,self._validation_method)
            
        elif self.algorithm=='smart-random':
            cache_filename,previously_tested = self.get_cachefile_name_and_previously_tested()
            self.all_combination = get_valid_random_combinations(self.parameters,self._validation_method,case_count,previously_tested)
            self.cleanup_cache_file_if_all_combinations_tested(self.all_combination, cache_filename, previously_tested)
            
        elif self.algorithm=='random':

            self.all_combination = get_valid_random_combinations(self.parameters,self._validation_method,case_count)

        elif self.algorithm=='pairwise':
            attrs = self.parameters.keys()
            #print parameters,type(parameters)
            self.parameters[attrs[0]]= random.sample(self.parameters[attrs[0]],len(self.parameters[attrs[0]]))
            self.all_combination = get_all_pairs(self.parameters,self._validation_method)
            #print all_combination
            #print 'We got here'
        else:
            raise Exception,' Not supported algorithm'

        return self.all_combination
 def test_pairwise_pairs_2(self):
     parameters = {'a':['pikku_a', 'iso_a'],
            'b':['foo', 'bar']}
     expected_result = [{'a': "pikku_a",'b':"foo"},{'a': "iso_a",'b':"foo"}
                        ,{'a': "iso_a",'b':"bar"},{'a': "pikku_a",'b':"bar"}]
     self.assertEqual(expected_result,get_all_pairs(parameters))
 def test_pairwise_pairs_1(self):
     parameters_1 = {'unit_type': [ "DMCU"],'state':[ "WO-EX"]}
     expected_result = [{'unit_type': "DMCU",'state':"WO-EX"}]
     self.assertEqual(expected_result,get_all_pairs(parameters_1))