diff options
| author | Elena Vilchik | 2019-12-18 17:10:10 +0100 | 
|---|---|---|
| committer | Alban Auzeill | 2019-12-18 17:10:10 +0100 | 
| commit | c8f0071c4f5336dfe0efc5d3c218ab49f2401264 (patch) | |
| tree | 254cd5ed9531d7c62bab4f8ec082e085795ecb8f /sonar-css-plugin/src/test/resources/mock-start-server | |
| parent | 13fe08e87c8a70ffe6e248b774ef826bbe1f779d (diff) | |
| download | sonar-css-c8f0071c4f5336dfe0efc5d3c218ab49f2401264.tar.bz2 | |
Rely on NodeJS API of Stylelint to execute CSS rules (#221)
Diffstat (limited to 'sonar-css-plugin/src/test/resources/mock-start-server')
| -rw-r--r-- | sonar-css-plugin/src/test/resources/mock-start-server/startServer.js | 70 | ||||
| -rw-r--r-- | sonar-css-plugin/src/test/resources/mock-start-server/throw.js | 3 | 
2 files changed, 73 insertions, 0 deletions
| diff --git a/sonar-css-plugin/src/test/resources/mock-start-server/startServer.js b/sonar-css-plugin/src/test/resources/mock-start-server/startServer.js new file mode 100644 index 0000000..c8b8d38 --- /dev/null +++ b/sonar-css-plugin/src/test/resources/mock-start-server/startServer.js @@ -0,0 +1,70 @@ +#!/usr/bin/env node + +const http = require('http'); +const port = process.argv[2]; + +console.log(`DEBUG testing debug log`) +console.log(`WARN testing warn log`) +console.log(`testing info log`) + +const requestHandler = (request, response) => { +  let data = []; +  request.on('data', chunk => { +    data.push(chunk); +  }); +  request.on('end', () => { +    let fileName = null; +    if (data.length > 0) { +      const analysisRequest = JSON.parse(data.join()); +      fileName = analysisRequest.filePath.replace(/.*[\/\\]/g,""); +    } +    if (request.url === '/status') { +      response.writeHead(200, { 'Content-Type': 'text/plain' }); +      response.end('OK!'); +    } else { +      switch (fileName) { +        case "file.css": +        case "file.web": +        case "file.php": +        case "file.js": // to test that we will not save this issue even if it's provided by response +          response.end(JSON.stringify([ +            {line: 2, rule: "block-no-empty", text: "Unexpected empty block"} +          ])); +          break; +        case "file-with-rule-id-message.css": +          response.end(JSON.stringify([ +            {line: 2, rule: "color-no-invalid-hex", text: "some message (color-no-invalid-hex)"} +          ])); +          break; +        case "empty.css": +          response.end(JSON.stringify([])); +          break; +        case "syntax-error.css": +          response.end(JSON.stringify([ +            {line: 2, rule: "CssSyntaxError", text: "Missed semicolon (CssSyntaxError)"} +          ])); +          break; +        case "unknown-rule.css": +          response.end(JSON.stringify([ +            {line: 2, rule: "unknown-rule-key", text: "some message"} +          ])); +          break; +        case "invalid-json-response.css": +          response.end("["); +          break; +        default: +          throw "Unexpected fileName: " + fileName; +      } +    } +  }); +}; + +const server = http.createServer(requestHandler); + +server.listen(port, (err) => { +  if (err) { +    return console.log('something bad happened', err) +  } + +  console.log(`server is listening on ${port}`) +}); diff --git a/sonar-css-plugin/src/test/resources/mock-start-server/throw.js b/sonar-css-plugin/src/test/resources/mock-start-server/throw.js new file mode 100644 index 0000000..028dbc8 --- /dev/null +++ b/sonar-css-plugin/src/test/resources/mock-start-server/throw.js @@ -0,0 +1,3 @@ +#!/usr/bin/env node + +throw "Something wrong happened" | 
