open Mp5common
let rubric_version = "1.0"
let rubric_title = "CS421 Spring 2008 MP5"

(**************************************************************************
 * You can add new test cases by adding new elements to the following lists
 * Format is:
 * TEST<X>ARG(<weight>, <function_name>, <arg1>, <arg2>, ..., <argX>)
 *
 * <X> is the number of argument that the function being tested takes.
 **************************************************************************)

(* Test cases should go in this list. 
 * The first element of the pair is the weight of the case,
 * and the second is the string to be given to the parser.
 *)


(* This list is for regular problems *)
let test_cases = [
(*Problem 1*)
1,  "class Dummy { }";
1,  "class A extends B {} class C{} class D{} class E{}";
1,  "class A { int x; }";
1,  "class A { Dummy[] array; }";
1,  "class A { public int m1(){}}";
1,  "class A { public int m1(int arg1, String arg2, float arg3){}}";
1,  "class A { int i; public int m1(){} }";

1,  "should return None";
]

(* This list is for extra credit problems *)
let extra_test_cases = [
]

(* Do not modify below this line *)
let lex s = Minijavalex.get_all_tokens s

let rubric = List.map 
             (fun (w,s) -> TEST1ARG(w, parse, (lex s)))
             test_cases


let extra_rubric = List.map 
             (fun (w,s) -> TEST1ARG(w, parse, (lex s)))
             extra_test_cases
