/// <summary> /// Constructor for ConsoleUI class /// </summary> /// <param name="studUi">student ui</param> /// <param name="hwUi">homework ui</param> /// <param name="grUi">grade ui</param> public ConsoleUi(StudentConsole studUi, HomeworkConsole hwUi, GradeConsole grUi, FilterConsole flUi, ReportConsole repUi) { _stuUi = studUi; _hwUi = hwUi; _grUi = grUi; _flUi = flUi; _repUi = repUi; }
private void Start(IList <string> aArgs) { if (iOptionShow.Value) // Show Tests { if (aArgs.Count > 0) { ITest test = FindTest(aArgs[0]); if (test != null) { ShowTest(test); } else { Console.WriteLine("Test not found"); } } else { ShowTests(); } return; } if (aArgs.Count == 0) { Console.WriteLine("Test not specified"); return; } iTest = FindTest(aArgs[0]); if (iTest == null) { Console.WriteLine("Specified test not found"); return; } // Check arguments int args = aArgs.Count - 1; if (iTest.Parameters.Count > args) { int i = 1; foreach (IParameter parameter in iTest.Parameters) { if (args-- == 0) { Console.WriteLine(iTest.Name + " argument " + i + " not specified (" + parameter.Name + ")"); return; } i++; } } int pos = 1; // Set Parameters foreach (IParameter parameter in iTest.Parameters) { if (parameter.Kind == "Nodal") { if (iNodes == null) { CollectNodes(); } } parameter.Init(iNodes); parameter.Value = aArgs[pos]; if (!parameter.Valid) { Console.WriteLine(parameter.Name + " invalid"); return; } pos++; } Report report = new Report(); ReportConsole console = new ReportConsole(this, report); iTest.Execute(report); }