示例#1
0
 /// <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;
 }
示例#2
0
    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);
    }