1 import java.util.Scanner;
2
3 /**
4 This program demonstrates the use of mock objects
5 for testing.
6 */
7 public class GradingProgram
8 {
9 public static void main(String[] args)
10 {
11 IGradeBook gradeBook = new MockGradeBook();
12 Scanner in = new Scanner(System.in);
13 boolean done = false;
14 while (!done)
15 {
16 System.out.print("L)oad A)dd aV)erage S)ave Q)uit: ");
17 String command = in.next().toUpperCase();
18 if (command.equals("L"))
19 {
20 System.out.print("Filename: ");
21 String filename = in.next();
22 gradeBook.load(filename);
23 }
24 else if (command.equals("S"))
25 {
26 System.out.print("Filename: ");
27 String filename = in.next();
28 gradeBook.save(filename);
29 }
30 else if (command.equals("A"))
31 {
32 System.out.print("ID: ");
33 int id = in.nextInt();
34 System.out.print("Score: ");
35 double score = in.nextDouble();
36 gradeBook.addScore(id, score);
37 }
38 else if (command.equals("V"))
39 {
40 System.out.print("ID: ");
41 int id = in.nextInt();
42 System.out.println("Average for " + id + ": "
43 + gradeBook.getAverageScore(id));
44 }
45 else if (command.equals("Q"))
46 {
47 done = true;
48 }
49 }
50 }
51 }