double test2() {
	int t0[] = {38,24};
	vector <int> p0(t0, t0+sizeof(t0)/sizeof(int));
	int t1[] = {37,23};
	vector <int> p1(t1, t1+sizeof(t1)/sizeof(int));
	int t2[] = {1000,643};
	vector <int> p2(t2, t2+sizeof(t2)/sizeof(int));
	string t3[] = {"Letter","Postcard"};
	vector <string> p3(t3, t3+sizeof(t3)/sizeof(string));
	MostProfitable * obj = new MostProfitable();
	clock_t start = clock();
	string my_answer = obj->bestItem(p0, p1, p2, p3);
	clock_t end = clock();
	delete obj;
	cout <<"Time: " <<(double)(end-start)/CLOCKS_PER_SEC <<" seconds" <<endl;
	string p4 = "";
	cout <<"Desired answer: " <<endl;
	cout <<"\t\"" << p4 <<"\"" <<endl;
	cout <<"Your answer: " <<endl;
	cout <<"\t\"" << my_answer<<"\"" <<endl;
	if (p4 != my_answer) {
		cout <<"DOESN'T MATCH!!!!" <<endl <<endl;
		return -1;
	}
	else {
		cout <<"Match :-)" <<endl <<endl;
		return (double)(end-start)/CLOCKS_PER_SEC;
	}
}
double test0() {
	int t0[] = {100,120,150,1000};
	vector <int> p0(t0, t0+sizeof(t0)/sizeof(int));
	int t1[] = {110,110,200,2000};
	vector <int> p1(t1, t1+sizeof(t1)/sizeof(int));
	int t2[] = {20,100,50,3};
	vector <int> p2(t2, t2+sizeof(t2)/sizeof(int));
	string t3[] = {"Video Card","256M Mem","CPU/Mobo combo","Complete machine"};
	vector <string> p3(t3, t3+sizeof(t3)/sizeof(string));
	MostProfitable * obj = new MostProfitable();
	clock_t start = clock();
	string my_answer = obj->bestItem(p0, p1, p2, p3);
	clock_t end = clock();
	delete obj;
	cout <<"Time: " <<(double)(end-start)/CLOCKS_PER_SEC <<" seconds" <<endl;
	string p4 = "Complete machine";
	cout <<"Desired answer: " <<endl;
	cout <<"\t\"" << p4 <<"\"" <<endl;
	cout <<"Your answer: " <<endl;
	cout <<"\t\"" << my_answer<<"\"" <<endl;
	if (p4 != my_answer) {
		cout <<"DOESN'T MATCH!!!!" <<endl <<endl;
		return -1;
	}
	else {
		cout <<"Match :-)" <<endl <<endl;
		return (double)(end-start)/CLOCKS_PER_SEC;
	}
}
bool do_test(vector<int> costs, vector<int> prices, vector<int> sales, vector<string> items, string __expected, int caseNo) {
    cout << "  Testcase #" << caseNo << " ... ";

    time_t startClock = clock();
    MostProfitable *instance = new MostProfitable();
    string __result = instance->bestItem(costs, prices, sales, items);
    double elapsed = (double)(clock() - startClock) / CLOCKS_PER_SEC;
    delete instance;

    if (__result == __expected) {
        cout << "PASSED!" << " (" << elapsed << " seconds)" << endl;
        return true;
    }
    else {
        cout << "FAILED!" << " (" << elapsed << " seconds)" << endl;
        cout << "           Expected: " << pretty_print(__expected) << endl;
        cout << "           Received: " << pretty_print(__result) << endl;
        return false;
    }
}
예제 #4
0
    void testCase3() {
        int costs_[] = {10, 10};
        vector<int> costs(costs_, costs_ + (sizeof(costs_) / sizeof(costs_[0])));
        int prices_[] = {11, 12};
        vector<int> prices(prices_, prices_ + (sizeof(prices_) / sizeof(prices_[0])));
        int sales_[] = {2, 1};
        vector<int> sales(sales_, sales_ + (sizeof(sales_) / sizeof(sales_[0])));
        string items_[] = {"A", "B"};
        vector<string> items(items_, items_ + (sizeof(items_) / sizeof(items_[0])));
		string expected_ = "A";
        assertEquals(3, expected_, solution.bestItem(costs, prices, sales, items));
    }
예제 #5
0
    void testCase2() {
        int costs_[] = {38, 24};
        vector<int> costs(costs_, costs_ + (sizeof(costs_) / sizeof(costs_[0])));
        int prices_[] = {37, 23};
        vector<int> prices(prices_, prices_ + (sizeof(prices_) / sizeof(prices_[0])));
        int sales_[] = {1000, 643};
        vector<int> sales(sales_, sales_ + (sizeof(sales_) / sizeof(sales_[0])));
        string items_[] = {"Letter", "Postcard"};
        vector<string> items(items_, items_ + (sizeof(items_) / sizeof(items_[0])));
		string expected_ = "";
        assertEquals(2, expected_, solution.bestItem(costs, prices, sales, items));
    }
예제 #6
0
    void testCase1() {
        int costs_[] = {100};
        vector<int> costs(costs_, costs_ + (sizeof(costs_) / sizeof(costs_[0])));
        int prices_[] = {100};
        vector<int> prices(prices_, prices_ + (sizeof(prices_) / sizeof(prices_[0])));
        int sales_[] = {134};
        vector<int> sales(sales_, sales_ + (sizeof(sales_) / sizeof(sales_[0])));
        string items_[] = {"Service, at cost"};
        vector<string> items(items_, items_ + (sizeof(items_) / sizeof(items_[0])));
		string expected_ = "";
        assertEquals(1, expected_, solution.bestItem(costs, prices, sales, items));
    }
예제 #7
0
    void testCase0() {
        int costs_[] = {100, 120, 150, 1000};
        vector<int> costs(costs_, costs_ + (sizeof(costs_) / sizeof(costs_[0])));
        int prices_[] = {110, 110, 200, 2000};
        vector<int> prices(prices_, prices_ + (sizeof(prices_) / sizeof(prices_[0])));
        int sales_[] = {20, 100, 50, 3};
        vector<int> sales(sales_, sales_ + (sizeof(sales_) / sizeof(sales_[0])));
        string items_[] = {"Video Card", "256M Mem", "CPU/Mobo combo", "Complete machine"};
        vector<string> items(items_, items_ + (sizeof(items_) / sizeof(items_[0])));
		string expected_ = "Complete machine";
        assertEquals(0, expected_, solution.bestItem(costs, prices, sales, items));
    }