Test case implementation in CUnit

  1. Greatest Common Divisor
  2. Skatteindbetaling

Greatest Common Divisor

  1. Tilføj jeres tidligere udviklede test cases (se skabelon i VS workspace GCD)
  2. Oversæt og kør gcdcunittests
  3. Læs Test Rapport
  4. Tilføj evt. med vilje en testcase der fejler
  5. Compiler m Bullseye Coverage og browse coverage resultater (exclude cunit og gcdTestSrc)

 

Skatteindbetaling

Nedenstående funktion, der  beregner hvor meget der yderligere kan indbetales på
en persons årlige pensionsopsparing efter følgende regler:

1. hvis man har status 'S' kan der indbetales 2500 hvis man tjener mindre end 40000, ellers kan der indbetales 1500.
2. Hvis man ikke har status 'S' kan der indbetales 4000, hvis man tjener under 75000, ellers kan der indbetales 2800.

Input til funktionen er indtægt, status, hidtidige indbetalinger (i et array), samt antallet af hidtidige indbetalinger.

Alle indbetalinger er 'double'.'

Opstil et antal (min 3) test cases

Implementer og kør test casene vha cunit framework. Vedlagt er en  skabelon (IRS folder) og eksempel, som I kan arbejde videre på: kilde teksten til eksempel testen ligger i testIRS.c, og oversættes vha VisualStudio Workspace i IRS folder. irsTestReport.xml

double iraContribution (double income, char status, double Payments [ ], int aSize)
{

  double maxContribution = 0.0;
  double totalPayments = 0.0;
  int i;
  
  for (i = 0; i < aSize; i++) {
    totalPayments = totalPayments + Payments[ i];
  }

  if ( status == 'S' )
    if ( income <= 40000.00 )
      maxContribution = 2500.00;
    else
      maxContribution = 1500.00;
  else
    if ( income <= 75000.00 )
      maxContribution = 4000.00;
    else
      maxContribution = 2800.00;

    return ( maxContribution - totalPayments);
}


Med Venlig Hilsen

Arne & Brian