public void ShouldReportCompileErrorInProgram() { string snippet = @" using System; namespace Client { class Program { static void Main(string[] args) { Console.WriteLine(""Hello""); Console.WriteLine(""World !""); Console.WriteLine(undefined); } } }"; string expectedMessage = "CS0103: The name 'undefined' does not exist in the current context"; int expectedLine = 10; DynamicCompilationException exception = Assert.Throws <DynamicCompilationException>( () => Executor.Execute(snippet)); Assert.Equal(expectedMessage, exception.Message); Assert.Equal(expectedLine, exception.LineNumber); }
public void ShouldReportCompileErrorsWithLine() { string snippet = @" for (var i = 0; i < 3; i++) { Console.WriteLine(i); } int a = undefined;"; string expectedMessage = "CS0103: The name 'undefined' does not exist in the current context"; int expectedLine = 7; DynamicCompilationException exception = Assert.Throws <DynamicCompilationException>( () => Executor.ExecuteSnippet(BreakLines(snippet))); Assert.Equal(expectedMessage, exception.Message); Assert.Equal(expectedLine, exception.LineNumber); }
public static ConverterResponse ForError(DynamicCompilationException exception) { return(new ConverterResponse(null, exception.Message, exception.LineNumber)); }