Test-Cases zusammenfassen



  • Hallo,

    ich habe eine Boost Test-Suite

    BOOST_AUTO_TEST_SUITE( Rearranger_recomb )
    
    	void test_rearr(Rev_Tree* tree, string name, map<unsigned, pair<string, double> > p) {
    		const string TEST_CASE_NAME = "Rearranger_recomb_manual";
    		Rearranger_Recomb rearr = Rearranger_Recomb(tree);
    
    		Dot::dot_output(tree, TEST_CASE_NAME + "\\\" " + " R-1");
    		rearr.call(tree->nd(name), p);
    		Dot::dot_output(tree, TEST_CASE_NAME + "\\\" " + " R-2");
    		tree->LNP();
    		Dot::dot_output(tree, TEST_CASE_NAME + "\\\" " + " R-3");
    		tree->reverse_changes();
    		Dot::dot_output(tree, TEST_CASE_NAME + "\\\" " + " R-4");
    
    		rearr.call(tree->nd(name), p);
    		Dot::dot_output(tree, TEST_CASE_NAME + "\\\" " + " A-1");
    		tree->LNP();
    		Dot::dot_output(tree, TEST_CASE_NAME + "\\\" " + " A-2");
    		tree->accept_changes();
    		Dot::dot_output(tree, TEST_CASE_NAME + "\\\" " + " A-3");
    	}
    
    	BOOST_FIXTURE_TEST_CASE( Rearranger_recomb_manual_0, Build_Tree_HPs<1 COMMA false> ) {
    		map<unsigned, pair<string, double> > p = map_list_of(0, make_pair("3", 6))
    															(1, make_pair("0", 6))
    															(2, make_pair("0", 6))
    															(3, make_pair("0", 6));
    		test_rearr(&tree, "2", p);
    	}
    
    	BOOST_FIXTURE_TEST_CASE( Rearranger_recomb_manual_1, Build_Tree_HPs<2 COMMA true> ) {
    		map<unsigned, pair<string, double> > p = map_list_of(0, make_pair("3", 3))
    															(1, make_pair("0", 5))
    															(2, make_pair("0", 5))
    															(3, make_pair("0", 5));
    		test_rearr(&tree, "2", p);
    
    	}
    
    	...   // 18 weitere Test-Cases derselben Form
    }
    

    Ich frage mich nun, ob man mittels Template-Programmierung den Code für die 20 Test-Cases irgendwie verkürzen kann. Dabei sollen die 20 Test-Cases allerdings erhalten bleiben und nicht zu einem großen Test-Case zusammengefasst werden.


Anmelden zum Antworten