Пример #1
0
        public void SimpleProgram()
        {
            string simpleProgram  = "class P{static void Main(){}}";
            var    checkingResult = _cSharpChecker.CompileAndRun(simpleProgram);

            Assert.IsTrue(checkingResult.HasNotErrors());
        }
Пример #2
0
        private void btnCompile_Click(object sender, EventArgs e)
        {
            bool input = (sender as Button).Name.Contains("Input");

            dgvCompileErrors.Rows.Clear();
            List <CheckingResult> compileResult;
            var cSharpChecker = new CSharpChecker();

            if (input)
            {
                compileResult = cSharpChecker.Compile(tbInput.Text);
            }
            else
            {
                compileResult = cSharpChecker.CompileAndRun(tbOutput.Text);
            }

            foreach (var result in compileResult)
            {
                if (result.IsError)
                {
                    dgvCompileErrors.Rows.Add(result.FirstErrorLine.ToString(), result.FirstErrorColumn.ToString(),
                                              result.Description, input ? "input" : "output");
                }
            }

            if (!input)
            {
                if (compileResult.Count == 1 && compileResult.First().Output != null)
                {
                    tbConsoleOutput.ResetText();
                    tbConsoleOutput.Text = compileResult.First().Output;
                    if (cbScrollToEnd.Checked && tbConsoleOutput.Text.Length > 0)
                    {
                        tbConsoleOutput.Select(tbConsoleOutput.Text.Length - 1, 0);
                        tbConsoleOutput.ScrollToCaret();
                    }
                }
            }
        }