Help with Test Cases For OT Pay Prg

Ask for help with your homework/assignments in this forum!

Moderators: Darobat, RecursiveS, Dante Shamest, Bugdude, Wizard

Help with Test Cases For OT Pay Prg

Postby kaosuvls » Sun Feb 26, 2012 6:53 pm

Ok Guys this is what I have to do:


o Provide six test plans to verify the logic within the program.
o Plan 1 must display the proper information for employee #1 with overtime pay.
o Plan 2 must display the proper information for employee #1 with no overtime pay.
o Plans 3-6 are duplicates of plan 1 and 2 but for the other employees.


I do not know how to get this started. Just an example in code will get me there guys.

This is my code I have to test.

Code: Select all
#include <iostream>
#include <string>
#include <iomanip>
   
using namespace std;

struct EmployeeClass
{
    void ImplementCalculations(int hours, float wage);
    void DisplayEmployInformation(void);
    string employeeFirstName, employeeLastName;
    int hours ;
    float wage ;
    float basepay ;
    int overtime_hours ;
    float overtime_pay ;
    float overtime_extra ;
    float iTotal_salaries ;
    float iIndividualSalary ;
    int iTotal_hours ;
    int iTotal_OvertimeHours ;
};

void Addsomethingup(EmployeeClass theEmployees[], int totalEmployees);

const int NumEmployees = 3;


int main()
{
   system("cls");
   
   cout << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << endl;
    cout << "\nWelcome to Data Max Inc. Employee Pay Center\n\n" ;
   cout << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << endl;
   


    EmployeeClass Emp[NumEmployees];  // array
    for (int i = 0; i < NumEmployees; ++i ){

    cout << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << endl;
        cout << "\n\nEnter Employee # " <<  i+1 << " first name = ";
        cin >> Emp[i].employeeFirstName;

        cout << "\n\nEnter Employee # " <<  i+1 << " last name = ";
        cin >> Emp[i].employeeLastName;
   
        cout << "\n\nEnter the hours worked = ";
        cin >> Emp[i].hours;
   
        cout << "\n\nEnter employee's hourly wage = " ;
        cin >> Emp[i].wage;
    }

    for (int i = 0; i < NumEmployees; ++i )
        Emp[i].ImplementCalculations(Emp[i].hours, Emp[i].wage);
   
Addsomethingup( Emp, NumEmployees);

cin.get();
   cin.get();
      return 0;
}

void EmployeeClass::ImplementCalculations(int hours, float wage)
{
     overtime_hours=0;
     overtime_pay=0;
     overtime_extra=0;
   
      if (hours > 40)
     {     
          basepay = 40 * wage;
        overtime_hours = hours - 40;
          overtime_pay = wage * 1.5;
          overtime_extra = overtime_hours * overtime_pay;
          iIndividualSalary = overtime_extra + basepay;

   cout << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << endl;
        DisplayEmployInformation ();
      }
    
     else
     { 
   basepay = hours * wage;
        iIndividualSalary = basepay;

   cout << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << endl;
        DisplayEmployInformation ();
     }
    
    
}

void EmployeeClass::DisplayEmployInformation () {
   // This function displays all the employee output information.
   
cout.setf(ios::fixed);
cout.precision(2);
   
    cout << "\n\n";
    cout << "Employee First Name ............. = " << employeeFirstName << endl;
   cout << "Employee Last Name .............. = " << employeeLastName << endl;
    cout << "Base Pay ........................ = " << basepay << endl;
    cout << "Hours in Overtime ............... = " << overtime_hours << endl;
    cout << "Overtime Pay Amout............... = " << overtime_extra << endl;
    cout << "Total Pay ....................... = " << iIndividualSalary << endl;
   
} // END OF Display Employee Information


void Addsomethingup(EmployeeClass theEmployee[], int totalEmployees)
{

   float iTotal_salaries = 0;;
        int iTotal_hours = 0;
        int iTotal_OvertimeHours = 0;

   for (int i = 0; i < totalEmployees; ++i )
        {
             iTotal_hours += theEmployee[i].hours;
             iTotal_salaries += theEmployee[i].iIndividualSalary;
             iTotal_OvertimeHours += theEmployee[i].overtime_hours;
        }
   
    cout << "\n\n" << endl;
    cout << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << endl;
    cout << "%%%% EMPLOYEE SUMMARY DATA%%%%%%%%%%%%%%%%%%%%%%%" << endl;
    cout << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << endl;
    cout << "%%%% Total Employee Salaries ..... = " << iTotal_salaries << endl;
    cout << "%%%% Total Employee Hours ........ = " << iTotal_hours << endl;
    cout << "%%%% Total Overtime Hours......... = " << iTotal_OvertimeHours << endl;
    cout << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << endl;
    cout << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << endl;

} // End of function

class Tester
{
public:
    void test1(EmployeeClass theEmployee[], int totalEmployees)
    {
    string employee;
   
    }
      
};


I started making a Tester class but do not know if this is right or not.

Thanks for any input guys....
kaosuvls
 
Posts: 1
Joined: Sun Feb 26, 2012 6:48 pm

Return to Homeworks

Who is online

Users browsing this forum: No registered users and 2 guests