public static Prompter Checkbox(this Prompter prompter, string name, FunctionOrColorString message, IEnumerable <string> choices, Action <CheckboxQuestion> setupQuestion = null) { var question = new CheckboxQuestion(name, message, choices); setupQuestion?.Invoke(question); prompter.Add(question); return(prompter); }
public static void Main(string[] args) { var tf = new TrueFalseQuestion("You know the rules and so do I.", true); var mc = new MultipleChoiceQuestion("What am I never gonna do?", "Give you up*,Let you out,Dessert you"); var cb = new CheckboxQuestion("Which of the following am I never gonna do?", "Make you cry*,Say goodbye*,Tell a lie*,Hurt you*"); // exception handling tests //var badMc1 = new MultipleChoiceQuestion("What am I never gonna do?", "Give you up*,Let you out*,Dessert you"); //var badMc2 = new MultipleChoiceQuestion("What am I never gonna do?", "Give you up,Let you out,Dessert you"); Quiz quiz = new Quiz(); quiz.Questions.Add(1, tf); quiz.Questions.Add(2, mc); quiz.Questions.Add(3, cb); foreach (var question in quiz.Questions) { Console.WriteLine($"{question.Key.ToString()}. {question.Value.Text}"); foreach (var choice in question.Value.Choices) { Console.WriteLine($"{choice.Key}. {choice.Value}"); } Console.WriteLine(""); Console.WriteLine(question.Value.GetInstructions()); var answer = Console.ReadLine(); quiz.SetUserAnswer(question.Key, answer); Console.WriteLine(""); } var results = quiz.GetResults(); foreach (var result in results) { Console.WriteLine(result); } Console.ReadLine(); }