bats-core / bats-vscode

BATS (Bash Automated Testing System) language support for VSCode.
MIT License
23 stars 7 forks source link

Provide problem matcher #2

Open bryceschober opened 5 years ago

bryceschober commented 5 years ago

It sure would be nice if this extension provided a problem matcher. I've worked up one that kinda basically works, but it's pretty long to copy around to the multiple test-subset tasks that I have in my workspace. The best I've come up with looks like:

    {
      "label": "Run all shell tests",
      "type": "shell",
      "command": "./test/lib/bats/bin/bats test/",
      "group": "test",
      "presentation": {
        "reveal": "always",
        "panel": "dedicated",
        "showReuseMessage": false,
        "clear": true
      },
      "problemMatcher": {
        "fileLocation": ["relative", "${workspaceFolder}"],
        "pattern": [
          // Regex testing at regexr.com/498rl
          { // Get file & line from the 1st line, like:
            //    (in test file test/examples.bats, line 10)
              "regexp": "\\s*\\(?in test file ([^,]+), line (\\d+)\\)\\s*",
              "file": 1,
              "line": 2
          },
          { // Get message from the 2nd line, like:
            //      `[ "$result" -eq 3 ]' failed
            // TODO: Support capture of multi-line output from bats extensions when this issue is
            // resolved: https://github.com/Microsoft/vscode/issues/9635 
              "regexp": "^\\s*(.*)\\s*$",
              "message": 1,
          }
        ]
      }
    }
jetmartin commented 5 years ago

Hi,

Sorry for the delay. Nice Idea, I’ll look at that as soon as I get some time available for that.

Best

J-Et.

jetmartin commented 5 years ago

Hi,

I've started to look at your point but I'm definitely too busy to manage and test it properly right now.

If someone want to provide support on that he is welcome !

Best.