branch: externals/csharp-mode commit 97903a2d37a72aa38cda51ea4d12d961cbc51b9b Merge: 217d3a7 15bc3cb Author: Jostein Kjønigsen <jost...@kjonigsen.net> Commit: GitHub <nore...@github.com>
Merge pull request #179 from josteink/feature/compilation-mode-dotnetcore Extend support for .NET Core in our compilation-mode regexps --- csharp-mode-tests.el | 9 ++++++++- csharp-mode.el | 24 +++++++++++++++++++++++- test-files/dotnet-nuget-error.txt | 1 + test-files/dotnet-nuget-warning.txt | 1 + test-files/dotnet-test-fail-xunit.txt | 8 ++++++++ 5 files changed, 41 insertions(+), 2 deletions(-) diff --git a/csharp-mode-tests.el b/csharp-mode-tests.el index f18cf02..1bf7b47 100644 --- a/csharp-mode-tests.el +++ b/csharp-mode-tests.el @@ -237,7 +237,14 @@ "C:\\inservice\\SystemTesting\\OperateDeviceProxy\\OperateDevice_Proxy\\Program.cs" "c:\\inservice\\systemtesting\\operationsproxy\\operationsproxy.cpp" "c:\\inservice\\systemtesting\\operationsproxy\\operationsproxy.cpp" - "c:\\inservice\\systemtesting\\operationsproxy\\operationsproxy.cpp")))) + "c:\\inservice\\systemtesting\\operationsproxy\\operationsproxy.cpp")) + + ("./test-files/dotnet-nuget-error.txt" ,csharp-compilation-re-dotnet-error + ("/home/jostein/build/sample-app/sample-app.csproj")) + ("./test-files/dotnet-nuget-warning.txt" ,csharp-compilation-re-dotnet-warning + ("/home/jostein/build/sample-app/sample-app.csproj")) + ("./test-files/dotnet-test-fail-xunit.txt" ,csharp-compilation-re-dotnet-testfail + ("/home/jostein/build/sample-app/Module/Testee.cs")))) (let* ((file-name (car test-case)) (regexp (cadr test-case)) diff --git a/csharp-mode.el b/csharp-mode.el index a680f69..50357c2 100644 --- a/csharp-mode.el +++ b/csharp-mode.el @@ -370,6 +370,19 @@ casts and declarations are fontified. Used on level 2 and higher." "warning [[:alnum:]]+: .+$") "Regexp to match compilation warning from xbuild.") +(defconst csharp-compilation-re-dotnet-error + "\\([^\r\n]+\\) : error [A-Z]+[0-9]+:") + +(defconst csharp-compilation-re-dotnet-warning + "\\([^\r\n]+\\) : warning [A-Z]+[0-9]+:") + +(defconst csharp-compilation-re-dotnet-testfail + (concat + "\\[[A-Za-z.]+[[:blank:]]+[0-9]+:[0-9]+:[0-9]+.[0-9]+\\][^(\r\n)]+ \\[FAIL\\]\n" + "[[:blank:]]+X \\(?:.+\n\\)+" + "[[:blank:]]+Stack Trace:\n" + "[[:blank:]]+at [^\r\n]+ in \\([^\r\n]+\\):line \\([0-9]+\\)")) + (eval-after-load 'compile (lambda () (dolist @@ -397,7 +410,16 @@ casts and declarations are fontified. Used on level 2 and higher." 1 nil (1 compilation-warning-face) - (4 compilation-warning-face)))) + (4 compilation-warning-face)) + (dotnet-error + ,csharp-compilation-re-dotnet-error + 1) + (dotnet-warning + ,csharp-compilation-re-dotnet-warning + 1 nil nil 1) + (dotnet-testfail + ,csharp-compilation-re-dotnet-testfail + 1 2))) (add-to-list 'compilation-error-regexp-alist-alist regexp) (add-to-list 'compilation-error-regexp-alist (car regexp))))) diff --git a/test-files/dotnet-nuget-error.txt b/test-files/dotnet-nuget-error.txt new file mode 100644 index 0000000..d746737 --- /dev/null +++ b/test-files/dotnet-nuget-error.txt @@ -0,0 +1 @@ +/home/jostein/build/sample-app/sample-app.csproj : error NU1102: - Found 24 version(s) in Net5 [ Nearest version: 5.0.0-rc.2.20513.86 ] [/home/jostein/build/sample-app/sample-app.sln] diff --git a/test-files/dotnet-nuget-warning.txt b/test-files/dotnet-nuget-warning.txt new file mode 100644 index 0000000..0cd5656 --- /dev/null +++ b/test-files/dotnet-nuget-warning.txt @@ -0,0 +1 @@ +/home/jostein/build/sample-app/sample-app.csproj : warning NU1604: Project dependency JetBrains.Annotations does not contain an inclusive lower bound. Include a lower bound in the dependency version to ensure consistent restore results. diff --git a/test-files/dotnet-test-fail-xunit.txt b/test-files/dotnet-test-fail-xunit.txt new file mode 100644 index 0000000..930308d --- /dev/null +++ b/test-files/dotnet-test-fail-xunit.txt @@ -0,0 +1,8 @@ +[xUnit.net 00:00:00.60] SampleApp.Module.Tests.TestClass.Some_Testcase_Gone_Wrong [FAIL] + X SampleApp.Module.Tests.TestClass.Some_Testcase_Gone_Wrong [2ms] + Error Message: + System.NotImplementedException : The method or operation is not implemented. + Stack Trace: + at SampleApp.Module.Testee..ctor(IHttpClient httpClient) in /home/jostein/build/sample-app/Module/Testee.cs:line 24 + at SampleApp.Module.Tests.TestClass.Some_Testcase_Gone_Wrong() in /home/jostein/build/sample-app/tests/TestClass.cs:line 11 +