#include <cstdlib>
#include <iostream>
#include <string>
#include <cmath>
#include "grade_in_range.h"
#include "get_letter_grade.h"
using namespace std;

/*--------
  signature: main: void -> int

  purpose: testing program for the function get_letter_grade

  examples: when run, this should output to the screen:
testing get_letter_grade: true's should mean passed:
---------------------------------------
...followed by each testing call, hopefully
   followed by true to show it passed

  by: funct_play
  last modified: Thu Oct 20 13:23:23 PDT 2016
--------*/

int main()
{
    cout << boolalpha;
    cout << endl;
    cout << "testing get_letter_grade: true's should mean passed: " << endl;
    cout << "---------------------------------------" << endl;
    cout << "(get_letter_grade(-12) == 'X'): " 
         << (get_letter_grade(-12) == 'X') << endl;
    cout << "(get_letter_grade(0) == 'T'): " 
         << (get_letter_grade(0) == 'T') << endl;
    cout << "(get_letter_grade(50) == 'T'): " 
         << (get_letter_grade(50) == 'T') << endl;
    cout << "(get_letter_grade(70) == 'C'): " 
         << (get_letter_grade(70) == 'C') << endl;
    cout << "(get_letter_grade(79.7) == 'C'): " 
         << (get_letter_grade(79.7) == 'C') << endl;
    cout << "(get_letter_grade(80) == 'B'): " 
         << (get_letter_grade(80) == 'B') << endl;
    cout << "(get_letter_grade(82.3) == 'B'): " 
         << (get_letter_grade(82.3) == 'B') << endl;
    cout << "(get_letter_grade(90) == 'A'): " 
         << (get_letter_grade(90) == 'A') << endl;
    cout << "(get_letter_grade(95) == 'A'): " 
         << (get_letter_grade(95) == 'A') << endl;
    cout << "(get_letter_grade(100) == 'A'): " 
         << (get_letter_grade(100) == 'A') << endl;
    cout << "(get_letter_grade(101) == 'X'): " 
         << (get_letter_grade(101) == 'X') << endl;
    cout << endl;

    return EXIT_SUCCESS;
}