Harden testing (#982)

This commit is contained in:
Marco Ferrari 2020-11-20 16:12:31 +01:00 committed by GitHub
parent 7d54559e11
commit 241f9f2cad
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
97 changed files with 301 additions and 384 deletions

View file

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - arm_bad_1.json
---
message: \nValidating arm\arm_bad_1.json\n deploymentTemplate\n [+] adminUsername Should Not Be A Literal\n [+] apiVersions Should Be Recent\n [+] artifacts parameter\n [+] DependsOn Best Practices\n [+] Deployment Resources Must Not Be Debug\n [+] DeploymentTemplate Must Not Contain Hardcoded Uri\n [+] DeploymentTemplate Schema Is Correct\n [+] Dynamic Variable References Should Not Use Concat\n [+] IDs Should Be Derived From ResourceIDs\n [+] Location Should Not Be Hardcoded\n [+] ManagedIdentityExtension must not be used\n [+] Min And Max Value Are Numbers\n [+] Outputs Must Not Contain Secrets\n [+] Parameters Must Be Referenced\n [+] Parameters Property Must Exist\n [+] providers apiVersions Is Not Permitted\n [+] ResourceIds should not contain\n [+] Resources Should Have Location\n [+] Secure String Parameters Cannot Have Default\n [-] Template Should Not Contain Blanks\n Empty property [] found on line 28 Index 1331\n Empty property "" found on line 3 Index 121\n\n [-] Variables Must Be Referenced\n Unreferenced variable Network.Location\n Unreferenced variable Test.Blank.Variable\n\n [+] Virtual Machines Should Not Be Preview\n [+] VM Images Should Use Latest Version\n [+] VM Size Should Be A Parameter\n \n
...
ok 2 - arm_good_1.json

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - arm_bad_1.json
---
message: \nValidating arm\arm_bad_1.json\n deploymentTemplate\n [+] adminUsername Should Not Be A Literal (109 ms)\n [+] apiVersions Should Be Recent (121 ms)\n [+] artifacts parameter (13 ms)\n [+] DependsOn Best Practices (7 ms)\n [+] Deployment Resources Must Not Be Debug (6 ms)\n [+] DeploymentTemplate Schema Is Correct (4 ms)\n [+] Dynamic Variable References Should Not Use Concat (8 ms)\n [+] IDs Should Be Derived From ResourceIDs (40 ms)\n [?] Location Should Not Be Hardcoded (5 ms)\n Skipped because IsMainTemplate was missing\n\n [+] ManagedIdentityExtension must not be used (54 ms)\n [+] Min And Max Value Are Numbers (6 ms)\n [+] Outputs Must Not Contain Secrets (15 ms)\n [+] Parameters Must Be Referenced (9 ms)\n [+] Parameters Property Must Exist (2 ms)\n [+] providers apiVersions Is Not Permitted (2 ms)\n [+] ResourceIds should not contain (14 ms)\n [+] Resources Should Have Location (3 ms)\n [+] Secure String Parameters Cannot Have Default (4 ms)\n [-] Template Should Not Contain Blanks (33 ms)\n Empty property [] found on line 28 Index 1331\n Empty property "" found on line 3 Index 121\n\n [-] Variables Must Be Referenced (35 ms)\n Unreferenced variable Network.Location\n Unreferenced variable Test.Blank.Variable\n\n [+] Virtual Machines Should Not Be Preview (17 ms)\n [+] VM Images Should Use Latest Version (1 ms)\n [+] VM Size Should Be A Parameter (15 ms)\n \n
...
ok 2 - arm_good_1.json

View file

@ -4,4 +4,4 @@ not ok 1 - shell_bad_1.sh
---
message: \nIn /tmp/lint/.automation/test/bash/shell_bad_1.sh line 10 \nif [ $ERROR_CODE -ne 0]; then\n^-- SC1009 The mentioned syntax error was in this if expression.\n ^-- SC1073 Couldn't parse this test expression. Fix to allow more checks.\n ^-- SC1020 You need a space before the ].\n ^-- SC1072 Missing space before ]. Fix any mentioned problems and try again.\n\nFor more information \n https //www.shellcheck.net/wiki/SC1020 -- You need a space before the ].\n https //www.shellcheck.net/wiki/SC1072 -- Missing space before ]. Fix any m...\n https //www.shellcheck.net/wiki/SC1073 -- Couldn't parse this test expressi...\n
...
ok 2 - /tmp/lint/.automation/test/bash/shell_good_1.sh
ok 2 - shell_good_1.sh

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - shell_bad_1.sh
---
message: Error File [/tmp/lint/.automation/test/bash_exec/shell_bad_1.sh] is not executable\n
...
ok 2 - shell_good_1.sh

View file

@ -2,6 +2,6 @@ TAP version 13
1..2
not ok 1 - clojure_bad_1.clj
---
message: /tmp/lint/.automation/test/clojure/clojure_bad_1.clj 5 5 warning namespace clojure.set is required but never used\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 8 2 error unresolved symbol but-last\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 12 1 error clojure.string/join is called with 0 args but expects 1 or 2\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 15 17 warning unused binding y\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 17 3 warning redundant do\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 19 5 warning inline def\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 22 7 warning Redundant let expression.\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 22 13 warning unused binding z\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 24 9 error y is called with 1 arg but expects 0\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 26 9 error recur argument count mismatch (expected 2, got 0)\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 29 9 error h is called with 1 arg but expects 0\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 30 9 error f is called with 1 arg but expects 0\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 34 1 warning redefined var #'foo/private-fn\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 34 8 warning Unused private var foo/private-fn\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 38 6 error Expected number, received keyword.\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 42 1 error java.lang.Thread/sleep is called with 3 args but expects 1 or 2\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 48 1 error foo/foo-fn is called with 0 args but expects 2\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 51 1 error #'foo/private-fn is private\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 54 7 error duplicate key a\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 56 5 error duplicate set element 1\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 58 7 error missing value for key b\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 64 3 warning missing test assertion\nlinting took 18ms, errors 13, warnings 9\n
message: /tmp/lint/.automation/test/clojure/clojure_bad_1.clj 5 5 warning namespace clojure.set is required but never used\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 8 2 error unresolved symbol but-last\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 12 1 error clojure.string/join is called with 0 args but expects 1 or 2\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 15 17 warning unused binding y\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 17 3 warning redundant do\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 19 5 warning inline def\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 22 7 warning Redundant let expression.\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 22 13 warning unused binding z\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 24 9 error y is called with 1 arg but expects 0\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 26 9 error recur argument count mismatch (expected 2, got 0)\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 29 9 error h is called with 1 arg but expects 0\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 30 9 error f is called with 1 arg but expects 0\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 34 1 warning redefined var #'foo/private-fn\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 34 8 warning Unused private var foo/private-fn\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 38 6 error Expected number, received keyword.\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 42 1 error java.lang.Thread/sleep is called with 3 args but expects 1 or 2\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 48 1 error foo/foo-fn is called with 0 args but expects 2\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 51 1 error #'foo/private-fn is private\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 54 7 error duplicate key a\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 56 5 error duplicate set element 1\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 58 7 error missing value for key b\n/tmp/lint/.automation/test/clojure/clojure_bad_1.clj 64 3 warning missing test assertion\nlinting took, errors 13, warnings 9\n
...
ok 2 - clojure_good_1.clj

View file

@ -16,7 +16,7 @@ not ok 4 - cloudformation_bad_4.yaml
---
message: E3002 Invalid Property Resources/myDNSRecord/Properties/Ttl\n/tmp/lint/.automation/test/cloudformation/cloudformation_bad_4.yaml 9 7\n
...
ok 5 - /tmp/lint/.automation/test/cloudformation/cloudformation_good_1.json
ok 6 - /tmp/lint/.automation/test/cloudformation/cloudformation_good_2.yaml
ok 7 - /tmp/lint/.automation/test/cloudformation/cloudformation_good_3.json
ok 8 - /tmp/lint/.automation/test/cloudformation/cloudformation_good_4.yaml
ok 5 - cloudformation_good_1.json
ok 6 - cloudformation_good_2.yaml
ok 7 - cloudformation_good_3.json
ok 8 - cloudformation_good_4.yaml

View file

@ -4,4 +4,4 @@ not ok 1 - coffeescript_bad_1.coffee
---
message: ✗ /tmp/lint/.automation/test/coffeescript/coffeescript_bad_1.coffee\n ✗ #39 [stdin] 39 29 error unmatched )\nmodule.exports = (robot) -> )\n ^. (coffeescript_error)\n\n✗ Lint! » 1 error and 0 warnings in 1 file\n
...
ok 2 - /tmp/lint/.automation/test/coffeescript/coffeescript_good_1.coffee
ok 2 - coffeescript_good_1.coffee

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - csharp_bad_01.cs
---
message: Formatting code files in workspace '/tmp/lint/.automation/test/csharp'.\n csharp/csharp_bad_01.cs(3,21) Fix whitespace formatting.\n csharp/csharp_bad_01.cs(4,16) Fix whitespace formatting.\n csharp/csharp_bad_01.cs(5,36) Fix whitespace formatting.\n Formatted code file '/tmp/lint/.automation/test/csharp/csharp_bad_01.cs'.\n Format complete in.\n
...
ok 2 - csharp_good_01.cs

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - css_bad_01.css
---
message: \ncss/css_bad_01.css\n 2 1 ✖ Expected empty line before comment comment-empty-line-before\n 3 1 ✖ Expected empty line before comment comment-empty-line-before\n 5 5 ✖ Expected indentation of 2 spaces indentation \n 5 33 ✖ Expected "#FFFFFF" to be "#ffffff" color-hex-case \n 5 33 ✖ Expected "#FFFFFF" to be "#FFF" color-hex-length \n 6 5 ✖ Expected indentation of 2 spaces indentation \n 7 5 ✖ Expected indentation of 2 spaces indentation \n 8 5 ✖ Expected indentation of 2 spaces indentation \n 8 12 ✖ Expected "#AAAAAA" to be "#aaaaaa" color-hex-case \n 8 12 ✖ Expected "#AAAAAA" to be "#AAA" color-hex-length\n
...
ok 2 - css_good_01.css

View file

@ -4,4 +4,4 @@ not ok 1 - css_bad_01.css
---
message: \ncss/css_bad_01.css\n 2 1 ✖ Expected empty line before comment comment-empty-line-before\n 3 1 ✖ Expected empty line before comment comment-empty-line-before\n 5 5 ✖ Expected indentation of 2 spaces indentation \n 5 33 ✖ Expected "#FFFFFF" to be "#ffffff" color-hex-case \n 5 33 ✖ Expected "#FFFFFF" to be "#FFF" color-hex-length \n 6 5 ✖ Expected indentation of 2 spaces indentation \n 7 5 ✖ Expected indentation of 2 spaces indentation \n 8 5 ✖ Expected indentation of 2 spaces indentation \n 8 12 ✖ Expected "#AAAAAA" to be "#aaaaaa" color-hex-case \n 8 12 ✖ Expected "#AAAAAA" to be "#AAA" color-hex-length\n
...
ok 2 - /tmp/lint/.automation/test/css/css_good_01.css
ok 2 - css_good_01.css

View file

@ -4,4 +4,4 @@ not ok 1 - dart_bad_1.dart
---
message: Analyzing /tmp/lint/.automation/test/dart/dart_bad_1.dart...\n lint • Use `;` instead of `{}` for empty constructor bodies. • dart/dart_bad_1.dart 4 25 • empty_constructor_bodies\n1 lint found.\n
...
ok 2 - /tmp/lint/.automation/test/dart/dart_good_1.dart
ok 2 - dart_good_1.dart

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - Dockerfile
---
message: \nFile /tmp/lint/.automation/test/docker/bad/Dockerfile\nIssues 6\n\nLine 1 from node latest\nIssue Category Title Description\n 1 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n 2 Clarity Base Image Latest Base images should not use the latest tag.\n Tag\n\nLine 4 run mkdir -p /usr/src/app\nIssue Category Title Description\n 3 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n\nLine 8 copy package.json /usr/src/app/ /here/there\nIssue Category Title Description\n 4 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n\nLine 9 RUN sudo npm install\nIssue Category Title Description\n 5 Possible Bug Use Of sudo Is Not Use of `sudo` is not allowed in a Dockerfile. From the official\n Allowed document [Best practices for writing\n Dockerfiles](https //docs.docker.com/engine/userguide/eng-image/doc\n kerfile_best-practices/) \n > You should avoid installing or using `sudo` since it has\n unpredictable TTY and signal-forwarding behavior that can cause\n more problems than it solves.\n > If you absolutely need functionality similar to `sudo` (e.g.,\n initializing the daemon as root but running it as non-root), you\n may be able to use `gosu`.\n\nLine 14 ENtrypoint /tmp/here.sh\nIssue Category Title Description\n 6 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n
...
ok 2 - Dockerfile

View file

@ -0,0 +1,8 @@
TAP version 13
1..3
not ok 1 - Dockerfile
---
message: \nFile /tmp/lint/.automation/test/dockerfile/bad/Dockerfile\nIssues 6\n\nLine 1 from node latest\nIssue Category Title Description\n 1 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n 2 Clarity Base Image Latest Base images should not use the latest tag.\n Tag\n\nLine 4 run mkdir -p /usr/src/app\nIssue Category Title Description\n 3 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n\nLine 8 copy package.json /usr/src/app/ /here/there\nIssue Category Title Description\n 4 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n\nLine 9 RUN sudo npm install\nIssue Category Title Description\n 5 Possible Bug Use Of sudo Is Not Use of `sudo` is not allowed in a Dockerfile. From the official\n Allowed document [Best practices for writing\n Dockerfiles](https //docs.docker.com/engine/userguide/eng-image/doc\n kerfile_best-practices/) \n > You should avoid installing or using `sudo` since it has\n unpredictable TTY and signal-forwarding behavior that can cause\n more problems than it solves.\n > If you absolutely need functionality similar to `sudo` (e.g.,\n initializing the daemon as root but running it as non-root), you\n may be able to use `gosu`.\n\nLine 14 ENtrypoint /tmp/here.sh\nIssue Category Title Description\n 6 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n
...
ok 2 - Dockerfile
ok 3 - Dockerfile.dev

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - Dockerfile
---
message: \nFile /tmp/lint/.automation/test/docker/bad/Dockerfile\nIssues 6\n\nLine 1 from node latest\nIssue Category Title Description\n 1 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n 2 Clarity Base Image Latest Base images should not use the latest tag.\n Tag\n\nLine 4 run mkdir -p /usr/src/app\nIssue Category Title Description\n 3 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n\nLine 8 copy package.json /usr/src/app/ /here/there\nIssue Category Title Description\n 4 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n\nLine 9 RUN sudo npm install\nIssue Category Title Description\n 5 Possible Bug Use Of sudo Is Not Use of `sudo` is not allowed in a Dockerfile. From the official\n Allowed document [Best practices for writing\n Dockerfiles](https //docs.docker.com/engine/userguide/eng-image/doc\n kerfile_best-practices/) \n > You should avoid installing or using `sudo` since it has\n unpredictable TTY and signal-forwarding behavior that can cause\n more problems than it solves.\n > If you absolutely need functionality similar to `sudo` (e.g.,\n initializing the daemon as root but running it as non-root), you\n may be able to use `gosu`.\n\nLine 14 ENtrypoint /tmp/here.sh\nIssue Category Title Description\n 6 Clarity Capitalize For clarity and readability, all instructions in a Dockerfile\n Dockerfile should be uppercase.\n Instructions This is a convention adopted by most of the official images and\n greatly improves readability in long Dockerfiles. For an example\n of\n why this makes a difference, check out the current [redis\n Dockerfile](https //github.com/docker-library/redis/blob/b375650fb6\n 9b7db819e90c0033433c705b28656e/3.0/Dockerfile)\n and you should be able to easily see the instructions used.\n
...
ok 2 - Dockerfile

View file

@ -0,0 +1,8 @@
TAP version 13
1..3
not ok 1 - Dockerfile
---
message: /tmp/lint/.automation/test/dockerfile_hadolint/bad/Dockerfile 1 DL3007 Using latest is prone to errors if the image will ever update. Pin the version explicitly to a release tag\n/tmp/lint/.automation/test/dockerfile_hadolint/bad/Dockerfile 8 DL3021 COPY with more than 2 arguments requires the last argument to end with /\n/tmp/lint/.automation/test/dockerfile_hadolint/bad/Dockerfile 9 DL3004 Do not use sudo as it leads to unpredictable behavior. Use a tool like gosu to enforce root\n/tmp/lint/.automation/test/dockerfile_hadolint/bad/Dockerfile 11 DL3020 Use COPY instead of ADD for files and folders\n/tmp/lint/.automation/test/dockerfile_hadolint/bad/Dockerfile 14 DL3025 Use arguments JSON notation for CMD and ENTRYPOINT arguments\n
...
ok 2 - Dockerfile
ok 3 - Dockerfile.dev

View file

@ -0,0 +1,10 @@
TAP version 13
1..5
ok 1 - .editorconfig
ok 2 - README.md
not ok 3 - editorconfig-checker_bad_1.ext
---
message: editorconfig/editorconfig-checker_bad_1.ext \n 1 Wrong amount of left-padding spaces(want multiple of 4)\n 2 Wrong amount of left-padding spaces(want multiple of 4)\n 3 Wrong amount of left-padding spaces(want multiple of 4)\n\n3 errors found\n
...
ok 4 - editorconfig-checker_good_1.ext
ok 5 - expected-EDITORCONFIG.tap

View file

@ -4,4 +4,4 @@ not ok 1 - env_bad_1.env
---
message: env/env_bad_1.env 1 LeadingCharacter Invalid leading character detected\nenv/env_bad_1.env 2 KeyWithoutValue The MY_ENV key should be with a value or have an equal sign\nenv/env_bad_1.env 3 IncorrectDelimiter The DB-NAME key has incorrect delimiter\nenv/env_bad_1.env 3 UnorderedKey The DB-NAME key should go before the LOGGER_LEVEL key\nenv/env_bad_1.env 4 LowercaseKey The DEbUG_hTTP key should be in uppercase\nenv/env_bad_1.env 4 UnorderedKey The DEbUG_hTTP key should go before the LOGGER_LEVEL key\nenv/env_bad_1.env 5 UnorderedKey The DB_NAME key should go before the DEbUG_hTTP key\n\nFound 7 problems\n
...
ok 2 - /tmp/lint/.automation/test/env/env_good_1.env
ok 2 - env_good_1.env

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - gherkin_bad_01.feature
---
message: /tmp/lint/.automation/test/gherkin/gherkin_bad_01.feature\n 8 Scenario name is already used in /tmp/lint/.automation/test/gherkin/gherkin_bad_01.feature 4 no-dupe-scenario-names\n 11 Trailing spaces are not allowed no-trailing-spaces\n 12 Multiple empty lines are not allowed no-multiple-empty-lines\n
...
ok 2 - gherkin_good_01.feature

View file

@ -1 +0,0 @@
TAP version 13

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - golang_bad_01.go
---
message: level=errorg="[linters context] typechecking error go/golang_bad_01.go 1 1 expected 'package', found 'if'"\nlevel=warningg="[runner] Can't run linter goanalysis_metalinter failed prerequisites [(inspect@command-line-arguments, isgenerated@command-line-arguments) analysis skipped errors in package [- go/golang_bad_01.go 1 1 expected 'package', found 'if']]"\nlevel=warningg="[runner] Can't run linter unused buildir analysis skipped errors in package [- go/golang_bad_01.go 1 1 expected 'package', found 'if']"\nlevel=errorg="Running error buildir analysis skipped errors in package [- go/golang_bad_01.go 1 1 expected 'package', found 'if']"\n
...
ok 2 - golang_good_01.go

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - golang_bad_01.go
---
message: level=error msg="[linters context] typechecking error golang/golang_bad_01.go 1 1 expected 'package', found 'if'"\nlevel=warning msg="[runner] Can't run linter goanalysis_metalinter S1005 failed prerequisites [(inspect@command-line-arguments, isgenerated@command-line-arguments) analysis skipped errors in package [- golang/golang_bad_01.go 1 1 expected 'package', found 'if']]"\nlevel=warning msg="[runner] Can't run linter unused buildir analysis skipped errors in package [- golang/golang_bad_01.go 1 1 expected 'package', found 'if']"\nlevel=error msg="Running error buildir analysis skipped errors in package [- golang/golang_bad_01.go 1 1 expected 'package', found 'if']"\n
...
ok 2 - golang_good_01.go

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - groovy_bad_01.groovy
---
message: GroovyLint Started CodeNarc Server\n/tmp/lint/.automation/test/groovy/groovy_bad_01.groovy\n 4 error Unexpected input '$' @ line 4, column 16. NglParseError \n\n\nnpm-groovy-lint results in 0 linted files \n┌─────────┬───────────┬─────────────┐\n│ (index) │ Severity │ Total found │\n├─────────┼───────────┼─────────────┤\n│ 0 │ 'Error' │ 1 │\n│ 1 │ 'Warning' │ 0 │\n│ 2 │ 'Info' │ 0 │\n└─────────┴───────────┴─────────────┘\nFailure 1 error(s) have been found \n 0 warning(s) have been found\n
...
ok 2 - groovy_good_01.groovy

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - java_bad_1.java
---
message: Starting audit...\n[ERROR] /tmp/lint/.automation/test/java/java_bad_1.java 1 1 Utility classes should not have a public or default constructor. [HideUtilityClassConstructor]\n[ERROR] /tmp/lint/.automation/test/java/java_bad_1.java 1 7 Name 'java_bad_1' must match pattern '^[A-Z][a-zA-Z0-9]*$'. [TypeName]\n[ERROR] /tmp/lint/.automation/test/java/java_bad_1.java 2 1 '{' at column 1 should be on the previous line. [LeftCurly]\n[ERROR] /tmp/lint/.automation/test/java/java_bad_1.java 4 29 Parameter args should be final. [FinalParameters]\n[ERROR] /tmp/lint/.automation/test/java/java_bad_1.java 4 40 Array brackets at illegal position. [ArrayTypeStyle]\n[ERROR] /tmp/lint/.automation/test/java/java_bad_1.java 5 5 '{' at column 5 should be on the previous line. [LeftCurly]\nAudit done.\nCheckstyle ends with 6 errors.\n
...
ok 2 - java_good_1.java

View file

@ -4,4 +4,4 @@ not ok 1 - javascript_bad_1.js
---
message: \n/tmp/lint/.automation/test/javascript_es/javascript_bad_1.js\n 4 39 error Parsing error Unterminated regular expression literal\n\n✖ 1 problem (1 error, 0 warnings)\n
...
ok 2 - /tmp/lint/.automation/test/javascript_es/javascript_good_1.js
ok 2 - javascript_good_1.js

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - javascript_bad_1.js
---
message: standard Use JavaScript Standard Style (https //standardjs.com)\n /tmp/lint/.automation/test/javascript/javascript_bad_1.js 4 40 Parsing error Unterminated regular expression\n
...
ok 2 - javascript_good_1.js

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - javascript_bad_1.js
---
message: \n/tmp/lint/.automation/test/javascript_es/javascript_bad_1.js\n 4 39 error Parsing error Unterminated regular expression literal\n\n✖ 1 problem (1 error, 0 warnings)\n
...
ok 2 - /tmp/lint/.automation/test/javascript_es/javascript_good_1.js

View file

@ -2,6 +2,6 @@ TAP version 13
1..2
not ok 1 - javascript_bad_1.js
---
message: standard Use JavaScript Standard Style (https //standardjs.com)\n /tmp/lint/.automation/test/javascript_standard/javascript_bad_1.js 4 40 Parsing error Unterminated regular expression\n
message: standard Use JavaScript Standard Style (https //standardjs.com)\n /tmp/lint/.automation/test/javascript_standard/javascript_bad_1.js Parsing error Unterminated regular expression\n
...
ok 2 - /tmp/lint/.automation/test/javascript_standard/javascript_good_1.js
ok 2 - javascript_good_1.js

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - json_bad_1.json
---
message: Error Parse error on line 6 \n...ng" { "level" 'ignore', "space\n----------------------^\nExpecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined'\n at Object.parseError (/node_modules/jsonlint/lib/jsonlint.js)\n at Object.parse (/node_modules/jsonlint/lib/jsonlint.js)\n at parse (/node_modules/jsonlint/lib/cli.js)\n at main (/node_modules/jsonlint/lib/cli.js)\n at Object.<anonymous> (/node_modules/jsonlint/lib/cli.js)\n at Module._compile (internal/modules/cjs/loader.js)\n at Object.Module._extensions..js (internal/modules/cjs/loader.js)\n at Module.load (internal/modules/cjs/loader.js)\n at Function.Module._load (internal/modules/cjs/loader.js)\n at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js)\n
...
ok 2 - json_good_1.json

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - json_bad_1.json
---
message: Error Parse error on line 6 \n...ng" { "level" 'ignore', "space\n----------------------^\nExpecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined'\n at Object.parseError (/node_modules/jsonlint/lib/jsonlint.js 55 11)\n at Object.parse (/node_modules/jsonlint/lib/jsonlint.js 132 22)\n at parse (/node_modules/jsonlint/lib/cli.js 82 14)\n at main (/node_modules/jsonlint/lib/cli.js 135 14)\n at Object.<anonymous> (/node_modules/jsonlint/lib/cli.js 179 1)\n at Module._compile (internal/modules/cjs/loader.js 1138 30)\n at Object.Module._extensions..js (internal/modules/cjs/loader.js 1158 10)\n at Module.load (internal/modules/cjs/loader.js 986 32)\n at Function.Module._load (internal/modules/cjs/loader.js 879 14)\n at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js 71 12)\n
...
ok 2 - json_good_1.json

View file

@ -4,4 +4,4 @@ not ok 1 - kotlin_bad_1.kt
---
message: /tmp/lint/.automation/test/kotlin/kotlin_bad_1.kt 1 1 File must end with a newline (\n)\n/tmp/lint/.automation/test/kotlin/kotlin_bad_1.kt 2 1 Unexpected indentation (4) (should be 2)\n/tmp/lint/.automation/test/kotlin/kotlin_bad_1.kt 2 20 Unnecessary semicolon\n/tmp/lint/.automation/test/kotlin/kotlin_bad_1.kt 3 1 Unexpected indentation (4) (should be 2)\n/tmp/lint/.automation/test/kotlin/kotlin_bad_1.kt 3 16 Redundant curly braces\n/tmp/lint/.automation/test/kotlin/kotlin_bad_1.kt 3 27 Unnecessary semicolon\n/tmp/lint/.automation/test/kotlin/kotlin_bad_1.kt 5 1 Unexpected indentation (4) (should be 2)\n/tmp/lint/.automation/test/kotlin/kotlin_bad_1.kt 5 15 Unnecessary semicolon\n
...
ok 2 - /tmp/lint/.automation/test/kotlin/kotlint_good_1.kt
ok 2 - kotlint_good_1.kt

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - kubeval_bad_1.yaml
---
message: WARN - /tmp/lint/.automation/test/kubernetes_kubeval/kubeval_bad_1.yaml contains an invalid Deployment (nginx-deployment) - image2 Additional property image2 is not allowed\n
...
ok 2 - kubeval_good_1.yaml

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - lua_bad_1.lua
---
message: Checking /tmp/lint/.automation/test/lua/lua_bad_1.lua 1 error\n\n /tmp/lint/.automation/test/lua/lua_bad_1.lua 10 1 expected 'end' (to close 'function' on line 7) near <eof>\n\nTotal 0 warnings / 1 error in 1 file\n
...
ok 2 - lua_good_1.lua

View file

@ -1,8 +1,8 @@
TAP version 13
1..3
ok 1 - /tmp/lint/.automation/test/markdown/README.md
ok 1 - README.md
not ok 2 - markdown_bad_1.md
---
message: /tmp/lint/.automation/test/markdown/markdown_bad_1.md 1 MD041/first-line-heading/first-line-h1 First line in file should be a top level heading [Context "## Bad Markdown"]\n/tmp/lint/.automation/test/markdown/markdown_bad_1.md 5 MD001/heading-increment/header-increment Heading levels should only increment by one level at a time [Expected h3; Actual h6]\n/tmp/lint/.automation/test/markdown/markdown_bad_1.md 11 1 MD007/ul-indent Unordered list indentation [Expected 4; Actual 6]\n/tmp/lint/.automation/test/markdown/markdown_bad_1.md 13 MD040/fenced-code-language Fenced code blocks should have a language specified [Context "```"]\n/tmp/lint/.automation/test/markdown/markdown_bad_1.md 20 16 MD034/no-bare-urls Bare URL used [Context "https //github.com"]\n
...
ok 3 - /tmp/lint/.automation/test/markdown/markdown_good_1.md
ok 3 - markdown_good_1.md

View file

@ -4,4 +4,4 @@ not ok 1 - perl_bad_1.pl
---
message: Code before strictures are enabled at line 14, column 1. See page 429 of PBP. (Severity 5)\n
...
ok 2 - /tmp/lint/.automation/test/perl/perl_good_1.pl
ok 2 - perl_good_1.pl

View file

@ -8,5 +8,5 @@ not ok 2 - php_bad_2.php
---
message: PHP Parse error syntax error, unexpected '}' in /tmp/lint/.automation/test/php_builtin/php_bad_2.php on line 15\nErrors parsing /tmp/lint/.automation/test/php_builtin/php_bad_2.php\n
...
ok 3 - /tmp/lint/.automation/test/php_builtin/php_good_1.php
ok 4 - /tmp/lint/.automation/test/php_builtin/php_good_2.php
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: \nFILE /tmp/lint/.automation/test/php/php_bad_1.php\n----------------------------------------------------------------------\nFOUND 7 ERRORS AFFECTING 1 LINE\n----------------------------------------------------------------------\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 7 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\n
...
not ok 2 - php_bad_2.php
---
message: \nFILE /tmp/lint/.automation/test/php/php_bad_2.php\n----------------------------------------------------------------------\nFOUND 4 ERRORS AND 1 WARNING AFFECTING 4 LINES\n----------------------------------------------------------------------\n 1 | WARNING | [ ] A file should declare new symbols (classes,\n | | functions, constants, etc.) and cause no other\n | | side effects, or it should execute logic with\n | | side effects, but should not do both. The first\n | | symbol is defined on line 6 and the first side\n | | effect is on line 10.\n 6 | ERROR | [x] Opening brace should be on a new line\n 14 | ERROR | [x] Space before opening parenthesis of function call\n | | prohibited\n 15 | ERROR | [x] Newline required after opening brace\n 15 | ERROR | [x] Closing brace must be on a line by itself\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 4 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: ------ ---------------------------------------------- \n Line php_bad_1.php \n ------ ---------------------------------------------- \n 3 Invalid numeric literal on line 3 \n 3 Invalid numeric literal on line 3 \n 3 Syntax error, unexpected '=' on line 3 \n 3 Syntax error, unexpected T_LNUMBER on line 3 \n 3 Syntax error, unexpected T_STRING on line 3 \n 3 Syntax error, unexpected T_STRING on line 3 \n ------ ---------------------------------------------- \n\n [ERROR] Found 6 errors \n
...
not ok 2 - php_bad_2.php
---
message: ------ ----------------------------------------- \n Line php_bad_2.php \n ------ ----------------------------------------- \n 15 Syntax error, unexpected '}' on line 15 \n ------ ----------------------------------------- \n\n [ERROR] Found 1 error \n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR ParseError - php/php_bad_1.php 3 2 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 2 - Const pe98y is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 8 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 10 - Const n0u823n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 17 - Syntax error, unexpected '=' on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 18 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 21 - Invalid numeric literal on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 24 - Const u3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 28 - Const r08u2q098ry is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 40 - Syntax error, unexpected T_LNUMBER on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 42 - Const nq2yr09n2yr9 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 55 - Const y2n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 61 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 61 - Const yr is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 68 - Const yr3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\n------------------------------\n15 errors found\n------------------------------\n\n
...
not ok 2 - php_bad_2.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR InvalidReturnType - php/php_bad_2.php 4 12 - The declared return type 'array<array-key, string>' for takesAnInt is incorrect, got 'array{int, string(hello)}' (see https //psalm.dev/011)\n * @return array<string>\n\n\nERROR InvalidReturnStatement - php/php_bad_2.php 7 12 - The inferred type 'array{int, string(hello)}' does not match the declared return type 'array<array-key, string>' for takesAnInt (see https //psalm.dev/128)\n return [$i, "hello"];\n\n\nERROR InvalidScalarArgument - php/php_bad_2.php 11 12 - Argument 1 of takesAnInt expects int, string(some text) provided (see https //psalm.dev/012)\ntakesAnInt($data[0]);\n\n\nERROR ParseError - php/php_bad_2.php 15 1 - Syntax error, unexpected '}' on line 15 (see https //psalm.dev/173)\n} elseif ($condition) {}\n\n\n------------------------------\n4 errors found\n------------------------------\nPsalm can automatically fix 1 of these issues.\nRun Psalm again with \n--alter --issues=InvalidReturnType --dry-run\nto see what it can fix.\n------------------------------\n\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: PHP Parse error syntax error, unexpected 'pe98y' (T_STRING) in /tmp/lint/.automation/test/php/php_bad_1.php on line 3\nErrors parsing /tmp/lint/.automation/test/php/php_bad_1.php\n
...
not ok 2 - php_bad_2.php
---
message: PHP Parse error syntax error, unexpected '}' in /tmp/lint/.automation/test/php/php_bad_2.php on line 15\nErrors parsing /tmp/lint/.automation/test/php/php_bad_2.php\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -0,0 +1,12 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: \nFILE /tmp/lint/.automation/test/php_phpcs/php_bad_1.php\n----------------------------------------------------------------------\nFOUND 7 ERRORS AFFECTING 1 LINE\n----------------------------------------------------------------------\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 7 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\nTime ; Memory 6MB\n
...
not ok 2 - php_bad_2.php
---
message: \nFILE /tmp/lint/.automation/test/php_phpcs/php_bad_2.php\n----------------------------------------------------------------------\nFOUND 4 ERRORS AND 1 WARNING AFFECTING 4 LINES\n----------------------------------------------------------------------\n 1 | WARNING | [ ] A file should declare new symbols (classes,\n | | functions, constants, etc.) and cause no other\n | | side effects, or it should execute logic with\n | | side effects, but should not do both. The first\n | | symbol is defined on line 6 and the first side\n | | effect is on line 10.\n 6 | ERROR | [x] Opening brace should be on a new line\n 14 | ERROR | [x] Space before opening parenthesis of function call\n | | prohibited\n 15 | ERROR | [x] Newline required after opening brace\n 15 | ERROR | [x] Closing brace must be on a line by itself\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 4 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\nTime ; Memory 6MB\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: \nFILE /tmp/lint/.automation/test/php/php_bad_1.php\n----------------------------------------------------------------------\nFOUND 7 ERRORS AFFECTING 1 LINE\n----------------------------------------------------------------------\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 7 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\n
...
not ok 2 - php_bad_2.php
---
message: \nFILE /tmp/lint/.automation/test/php/php_bad_2.php\n----------------------------------------------------------------------\nFOUND 4 ERRORS AND 1 WARNING AFFECTING 4 LINES\n----------------------------------------------------------------------\n 1 | WARNING | [ ] A file should declare new symbols (classes,\n | | functions, constants, etc.) and cause no other\n | | side effects, or it should execute logic with\n | | side effects, but should not do both. The first\n | | symbol is defined on line 6 and the first side\n | | effect is on line 10.\n 6 | ERROR | [x] Opening brace should be on a new line\n 14 | ERROR | [x] Space before opening parenthesis of function call\n | | prohibited\n 15 | ERROR | [x] Newline required after opening brace\n 15 | ERROR | [x] Closing brace must be on a line by itself\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 4 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: ------ ---------------------------------------------- \n Line php_bad_1.php \n ------ ---------------------------------------------- \n 3 Invalid numeric literal on line 3 \n 3 Invalid numeric literal on line 3 \n 3 Syntax error, unexpected '=' on line 3 \n 3 Syntax error, unexpected T_LNUMBER on line 3 \n 3 Syntax error, unexpected T_STRING on line 3 \n 3 Syntax error, unexpected T_STRING on line 3 \n ------ ---------------------------------------------- \n\n [ERROR] Found 6 errors \n
...
not ok 2 - php_bad_2.php
---
message: ------ ----------------------------------------- \n Line php_bad_2.php \n ------ ----------------------------------------- \n 15 Syntax error, unexpected '}' on line 15 \n ------ ----------------------------------------- \n\n [ERROR] Found 1 error \n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR ParseError - php/php_bad_1.php 3 2 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 2 - Const pe98y is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 8 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 10 - Const n0u823n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 17 - Syntax error, unexpected '=' on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 18 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 21 - Invalid numeric literal on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 24 - Const u3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 28 - Const r08u2q098ry is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 40 - Syntax error, unexpected T_LNUMBER on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 42 - Const nq2yr09n2yr9 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 55 - Const y2n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 61 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 61 - Const yr is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 68 - Const yr3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\n------------------------------\n15 errors found\n------------------------------\n\n
...
not ok 2 - php_bad_2.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR InvalidReturnType - php/php_bad_2.php 4 12 - The declared return type 'array<array-key, string>' for takesAnInt is incorrect, got 'array{int, string(hello)}' (see https //psalm.dev/011)\n * @return array<string>\n\n\nERROR InvalidReturnStatement - php/php_bad_2.php 7 12 - The inferred type 'array{int, string(hello)}' does not match the declared return type 'array<array-key, string>' for takesAnInt (see https //psalm.dev/128)\n return [$i, "hello"];\n\n\nERROR InvalidScalarArgument - php/php_bad_2.php 11 12 - Argument 1 of takesAnInt expects int, string(some text) provided (see https //psalm.dev/012)\ntakesAnInt($data[0]);\n\n\nERROR ParseError - php/php_bad_2.php 15 1 - Syntax error, unexpected '}' on line 15 (see https //psalm.dev/173)\n} elseif ($condition) {}\n\n\n------------------------------\n4 errors found\n------------------------------\nPsalm can automatically fix 1 of these issues.\nRun Psalm again with \n--alter --issues=InvalidReturnType --dry-run\nto see what it can fix.\n------------------------------\n\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: PHP Parse error syntax error, unexpected 'pe98y' (T_STRING) in /tmp/lint/.automation/test/php/php_bad_1.php on line 3\nErrors parsing /tmp/lint/.automation/test/php/php_bad_1.php\n
...
not ok 2 - php_bad_2.php
---
message: PHP Parse error syntax error, unexpected '}' in /tmp/lint/.automation/test/php/php_bad_2.php on line 15\nErrors parsing /tmp/lint/.automation/test/php/php_bad_2.php\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: \nFILE /tmp/lint/.automation/test/php/php_bad_1.php\n----------------------------------------------------------------------\nFOUND 7 ERRORS AFFECTING 1 LINE\n----------------------------------------------------------------------\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 7 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\n
...
not ok 2 - php_bad_2.php
---
message: \nFILE /tmp/lint/.automation/test/php/php_bad_2.php\n----------------------------------------------------------------------\nFOUND 4 ERRORS AND 1 WARNING AFFECTING 4 LINES\n----------------------------------------------------------------------\n 1 | WARNING | [ ] A file should declare new symbols (classes,\n | | functions, constants, etc.) and cause no other\n | | side effects, or it should execute logic with\n | | side effects, but should not do both. The first\n | | symbol is defined on line 6 and the first side\n | | effect is on line 10.\n 6 | ERROR | [x] Opening brace should be on a new line\n 14 | ERROR | [x] Space before opening parenthesis of function call\n | | prohibited\n 15 | ERROR | [x] Newline required after opening brace\n 15 | ERROR | [x] Closing brace must be on a line by itself\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 4 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -8,5 +8,5 @@ not ok 2 - php_bad_2.php
---
message: ------ ----------------------------------------- \n Line php_bad_2.php \n ------ ----------------------------------------- \n 15 Syntax error, unexpected '}' on line 15 \n ------ ----------------------------------------- \n\n [ERROR] Found 1 error \n
...
ok 3 - /tmp/lint/.automation/test/php_phpstan/php_good_1.php
ok 4 - /tmp/lint/.automation/test/php_phpstan/php_good_2.php
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR ParseError - php/php_bad_1.php 3 2 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 2 - Const pe98y is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 8 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 10 - Const n0u823n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 17 - Syntax error, unexpected '=' on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 18 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 21 - Invalid numeric literal on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 24 - Const u3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 28 - Const r08u2q098ry is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 40 - Syntax error, unexpected T_LNUMBER on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 42 - Const nq2yr09n2yr9 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 55 - Const y2n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 61 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 61 - Const yr is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 68 - Const yr3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\n------------------------------\n15 errors found\n------------------------------\n\n
...
not ok 2 - php_bad_2.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR InvalidReturnType - php/php_bad_2.php 4 12 - The declared return type 'array<array-key, string>' for takesAnInt is incorrect, got 'array{int, string(hello)}' (see https //psalm.dev/011)\n * @return array<string>\n\n\nERROR InvalidReturnStatement - php/php_bad_2.php 7 12 - The inferred type 'array{int, string(hello)}' does not match the declared return type 'array<array-key, string>' for takesAnInt (see https //psalm.dev/128)\n return [$i, "hello"];\n\n\nERROR InvalidScalarArgument - php/php_bad_2.php 11 12 - Argument 1 of takesAnInt expects int, string(some text) provided (see https //psalm.dev/012)\ntakesAnInt($data[0]);\n\n\nERROR ParseError - php/php_bad_2.php 15 1 - Syntax error, unexpected '}' on line 15 (see https //psalm.dev/173)\n} elseif ($condition) {}\n\n\n------------------------------\n4 errors found\n------------------------------\nPsalm can automatically fix 1 of these issues.\nRun Psalm again with \n--alter --issues=InvalidReturnType --dry-run\nto see what it can fix.\n------------------------------\n\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: PHP Parse error syntax error, unexpected 'pe98y' (T_STRING) in /tmp/lint/.automation/test/php/php_bad_1.php on line 3\nErrors parsing /tmp/lint/.automation/test/php/php_bad_1.php\n
...
not ok 2 - php_bad_2.php
---
message: PHP Parse error syntax error, unexpected '}' in /tmp/lint/.automation/test/php/php_bad_2.php on line 15\nErrors parsing /tmp/lint/.automation/test/php/php_bad_2.php\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: \nFILE /tmp/lint/.automation/test/php/php_bad_1.php\n----------------------------------------------------------------------\nFOUND 7 ERRORS AFFECTING 1 LINE\n----------------------------------------------------------------------\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "="; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space before "-"; 0 found\n 3 | ERROR | [x] Expected at least 1 space after "-"; 0 found\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 7 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\n
...
not ok 2 - php_bad_2.php
---
message: \nFILE /tmp/lint/.automation/test/php/php_bad_2.php\n----------------------------------------------------------------------\nFOUND 4 ERRORS AND 1 WARNING AFFECTING 4 LINES\n----------------------------------------------------------------------\n 1 | WARNING | [ ] A file should declare new symbols (classes,\n | | functions, constants, etc.) and cause no other\n | | side effects, or it should execute logic with\n | | side effects, but should not do both. The first\n | | symbol is defined on line 6 and the first side\n | | effect is on line 10.\n 6 | ERROR | [x] Opening brace should be on a new line\n 14 | ERROR | [x] Space before opening parenthesis of function call\n | | prohibited\n 15 | ERROR | [x] Newline required after opening brace\n 15 | ERROR | [x] Closing brace must be on a line by itself\n----------------------------------------------------------------------\nPHPCBF CAN FIX THE 4 MARKED SNIFF VIOLATIONS AUTOMATICALLY\n----------------------------------------------------------------------\n\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: ------ ---------------------------------------------- \n Line php_bad_1.php \n ------ ---------------------------------------------- \n 3 Invalid numeric literal on line 3 \n 3 Invalid numeric literal on line 3 \n 3 Syntax error, unexpected '=' on line 3 \n 3 Syntax error, unexpected T_LNUMBER on line 3 \n 3 Syntax error, unexpected T_STRING on line 3 \n 3 Syntax error, unexpected T_STRING on line 3 \n ------ ---------------------------------------------- \n\n [ERROR] Found 6 errors \n
...
not ok 2 - php_bad_2.php
---
message: ------ ----------------------------------------- \n Line php_bad_2.php \n ------ ----------------------------------------- \n 15 Syntax error, unexpected '}' on line 15 \n ------ ----------------------------------------- \n\n [ERROR] Found 1 error \n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -0,0 +1,12 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR ParseError - php_psalm/php_bad_1.php 3 2 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 2 - Const pe98y is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 8 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 10 - Const n0u823n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php_psalm/php_bad_1.php 3 17 - Syntax error, unexpected '=' on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 18 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php_psalm/php_bad_1.php 3 21 - Invalid numeric literal on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 24 - Const u3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 28 - Const r08u2q098ry is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php_psalm/php_bad_1.php 3 40 - Syntax error, unexpected T_LNUMBER on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 42 - Const nq2yr09n2yr9 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 55 - Const y2n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php_psalm/php_bad_1.php 3 61 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 61 - Const yr is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php_psalm/php_bad_1.php 3 68 - Const yr3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\n------------------------------\n15 errors found\n------------------------------\n\nChecks took seconds and used\nPsalm was unable to infer types in the codebase\n
...
not ok 2 - php_bad_2.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR InvalidReturnType - php_psalm/php_bad_2.php 4 12 - The declared return type 'array<array-key, string>' for takesAnInt is incorrect, got 'array{int, string(hello)}' (see https //psalm.dev/011)\n * @return array<string>\n\n\nERROR InvalidReturnStatement - php_psalm/php_bad_2.php 7 12 - The inferred type 'array{int, string(hello)}' does not match the declared return type 'array<array-key, string>' for takesAnInt (see https //psalm.dev/128)\n return [$i, "hello"];\n\n\nERROR InvalidScalarArgument - php_psalm/php_bad_2.php 11 12 - Argument 1 of takesAnInt expects int, string(some text) provided (see https //psalm.dev/012)\ntakesAnInt($data[0]);\n\n\nERROR ParseError - php_psalm/php_bad_2.php 15 1 - Syntax error, unexpected '}' on line 15 (see https //psalm.dev/173)\n} elseif ($condition) {}\n\n\n------------------------------\n4 errors found\n------------------------------\nPsalm can automatically fix 1 of these issues.\nRun Psalm again with \n--alter --issues=InvalidReturnType --dry-run\nto see what it can fix.\n------------------------------\n\nChecks took seconds and used\nPsalm was unable to infer types in the codebase\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -1,12 +0,0 @@
TAP version 13
1..4
not ok 1 - php_bad_1.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR ParseError - php/php_bad_1.php 3 2 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 2 - Const pe98y is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 8 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 10 - Const n0u823n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 17 - Syntax error, unexpected '=' on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 18 - Const r is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 21 - Invalid numeric literal on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 24 - Const u3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 28 - Const r08u2q098ry is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 40 - Syntax error, unexpected T_LNUMBER on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 42 - Const nq2yr09n2yr9 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 55 - Const y2n is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR ParseError - php/php_bad_1.php 3 61 - Syntax error, unexpected T_STRING on line 3 (see https //psalm.dev/173)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 61 - Const yr is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\nERROR UndefinedConstant - php/php_bad_1.php 3 68 - Const yr3 is not defined (see https //psalm.dev/020)\n2pe98y r-n0u823n=r 092u3- r08u2q098ry 09nq2yr09n2yr9 y2n-93yr 298yr3 29\n\n\n------------------------------\n15 errors found\n------------------------------\n\n
...
not ok 2 - php_bad_2.php
---
message: Scanning files...\nAnalyzing files...\n\nE\n\nERROR InvalidReturnType - php/php_bad_2.php 4 12 - The declared return type 'array<array-key, string>' for takesAnInt is incorrect, got 'array{int, string(hello)}' (see https //psalm.dev/011)\n * @return array<string>\n\n\nERROR InvalidReturnStatement - php/php_bad_2.php 7 12 - The inferred type 'array{int, string(hello)}' does not match the declared return type 'array<array-key, string>' for takesAnInt (see https //psalm.dev/128)\n return [$i, "hello"];\n\n\nERROR InvalidScalarArgument - php/php_bad_2.php 11 12 - Argument 1 of takesAnInt expects int, string(some text) provided (see https //psalm.dev/012)\ntakesAnInt($data[0]);\n\n\nERROR ParseError - php/php_bad_2.php 15 1 - Syntax error, unexpected '}' on line 15 (see https //psalm.dev/173)\n} elseif ($condition) {}\n\n\n------------------------------\n4 errors found\n------------------------------\nPsalm can automatically fix 1 of these issues.\nRun Psalm again with \n--alter --issues=InvalidReturnType --dry-run\nto see what it can fix.\n------------------------------\n\n
...
ok 3 - php_good_1.php
ok 4 - php_good_2.php

View file

@ -6,8 +6,4 @@ function BadFunction {
)
$Username
$Password
$VariableThatIsNotUsedLater = '5'
try {
'Empty Catch Block'
} catch {}
}

View file

@ -0,0 +1,17 @@
TAP version 13
1..6
not ok 1 - powershell_bad_1.ps1
---
message: \nRuleName Severity ScriptName Line Message\n-------- -------- ---------- ---- -------\nPSAvoidUsingUsernameAndPasswordPara Error powershell 4 Function 'Bad\nms _bad_1.ps1 Function' has\n both Usernam\n e and Passwor\n d parameters.\n Either set t\n he type of th\n e Password pa\n rameter to Se\n cureString or\n replace the\n Username and\n Password para\n meters with a\n Credential p\n arameter of t\n ype PSCredent\n ial. If using\n a Credential\n parameter in\n PowerShell 4\n .0 or earlier\n , please defi\n ne a credenti\n al transforma\n tion attribut\n e after the P\n SCredential t\n ype attribute\n .\nPSAvoidUsingPlainTextForPassword Warning powershell 5 Parameter '$P\n _bad_1.ps1 assword' shou\n ld use Secure\n String, other\n wise this wil\n l expose sens\n itive informa\n tion. See Con\n vertTo-Secure\n String for mo\n re informatio\n n.\n
...
not ok 2 - powershell_bad_1.psd1
---
message: \nRuleName Severity ScriptName Line Message\n-------- -------- ---------- ---- -------\nTerminatorExpectedAtEndOfString ParseError powershell 2 The string is\n _bad_1.psd missing the\n 1 terminator '\n .\nMissingEndCurlyBrace ParseError powershell 1 Missing closi\n _bad_1.psd ng '}' in sta\n 1 tement block\n or type defin\n ition.\n
...
not ok 3 - powershell_bad_1.psm1
---
message: \nRuleName Severity ScriptName Line Message\n-------- -------- ---------- ---- -------\nTerminatorExpectedAtEndOfString ParseError powershell 1 The string is\n _bad_1.psm missing the\n 1 terminator "\n .\n
...
ok 4 - powershell_good_1.ps1
ok 5 - powershell_good_1.psd1
ok 6 - powershell_good_1.psm1

View file

@ -1,17 +0,0 @@
TAP version 13
1..6
not ok 1 - powershell_bad_1.ps1
---
message: \nRuleName Severity ScriptName Line Message\n-------- -------- ---------- ---- -------\nPSAvoidUsingEmptyCatchBlock Warning powershell 12 Empty catch b\n _bad_1.ps1 lock is used.\n Please use W\n rite-Error or\n throw statem\n ents in catch\n blocks.\nPSAvoidUsingUsernameAndPasswordPara Error powershell 4 Function 'Bad\nms _bad_1.ps1 Function' has\n both Usernam\n e and Passwor\n d parameters.\n Either set t\n he type of th\n e Password pa\n rameter to Se\n cureString or\n replace the\n Username and\n Password para\n meters with a\n Credential p\n arameter of t\n ype PSCredent\n ial. If using\n a Credential\n parameter in\n PowerShell 4\n .0 or earlier\n , please defi\n ne a credenti\n al transforma\n tion attribut\n e after the P\n SCredential t\n ype attribute\n .\nPSAvoidTrailingWhitespace Information powershell 11 Line has trai\n _bad_1.ps1 ling whitespa\n ce\nPSAvoidUsingPlainTextForPassword Warning powershell 5 Parameter '$P\n _bad_1.ps1 assword' shou\n ld use Secure\n String, other\n wise this wil\n l expose sens\n itive informa\n tion. See Con\n vertTo-Secure\n String for mo\n re informatio\n n.\nPSUseDeclaredVarsMoreThanAssignment Warning powershell 9 The variable\ns _bad_1.ps1 'VariableThat\n IsNotUsedLate\n r' is assigne\n d but never u\n sed.\n
...
not ok 2 - powershell_bad_1.psd1
---
message: \nRuleName Severity ScriptName Line Message\n-------- -------- ---------- ---- -------\nTerminatorExpectedAtEndOfString ParseError powershell 2 The string is\n _bad_1.psd missing the\n 1 terminator '\n .\nMissingEndCurlyBrace ParseError powershell 1 Missing closi\n _bad_1.psd ng '}' in sta\n 1 tement block\n or type defin\n ition.\n
...
not ok 3 - powershell_bad_1.psm1
---
message: \nRuleName Severity ScriptName Line Message\n-------- -------- ---------- ---- -------\nTerminatorExpectedAtEndOfString ParseError powershell 1 The string is\n _bad_1.psm missing the\n 1 terminator "\n .\n
...
ok 4 - powershell_good_1.ps1
ok 5 - powershell_good_1.psd1
ok 6 - powershell_good_1.psm1

View file

@ -4,4 +4,4 @@ not ok 1 - protobuf_bad_1.proto
---
message: [protobuf/protobuf_bad_1.proto 8 1] The order of Import is invalid. Check if the file is ordered in the correct manner.\n[protobuf/protobuf_bad_1.proto 18 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 19 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 20 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 21 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 24 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 26 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 28 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 25 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 27 7] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 29 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 30 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 31 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 34 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 47 5] Found an incorrect indentation style " ". " " is correct.\n[protobuf/protobuf_bad_1.proto 3 1] The line length is 91, but it must be shorter than 80\n[protobuf/protobuf_bad_1.proto 4 1] Package name "examplePb" must only contains lowercase letters, digits and/or periods.\n[protobuf/protobuf_bad_1.proto 8 1] Imports are not sorted.\n[protobuf/protobuf_bad_1.proto 9 1] Imports are not sorted.\n[protobuf/protobuf_bad_1.proto 14 1] Imports are not sorted.\n[protobuf/protobuf_bad_1.proto 15 1] Imports are not sorted.\n[protobuf/protobuf_bad_1.proto 19 5] EnumField name "UNKNOWN" with zero value should have the suffix "UNSPECIFIED"\n[protobuf/protobuf_bad_1.proto 17 1] Enum name "enumAllowingAlias" must be UpperCamelCase\n[protobuf/protobuf_bad_1.proto 36 3] Field "inner_message" should avoid required for proto3\n[protobuf/protobuf_bad_1.proto 37 3] Group "Result" should be avoided for proto3\n[protobuf/protobuf_bad_1.proto 40 3] Group "Result" should be avoided for proto3\n[protobuf/protobuf_bad_1.proto 43 3] Group "Regular" should be avoided for proto3\n[protobuf/protobuf_bad_1.proto 29 5] Repeated field name "inner_message" must be pluralized name "inner_messages"\n[protobuf/protobuf_bad_1.proto 40 3] Repeated group name "Result" must be pluralized name "Results"\n[protobuf/protobuf_bad_1.proto 42 3] Repeated field name "paper" must be pluralized name "papers"\n[protobuf/protobuf_bad_1.proto 43 3] Repeated group name "Regular" must be pluralized name "Regulars"\n[protobuf/protobuf_bad_1.proto 23 1] Message name "outer" must be UpperCamelCase\n[protobuf/protobuf_bad_1.proto 26 5] Message name "inner" must be UpperCamelCase\n[protobuf/protobuf_bad_1.proto 47 5] RPC name "search" must be UpperCamelCase\n
...
ok 2 - /tmp/lint/.automation/test/protobuf/protobuf_good_1.proto
ok 2 - protobuf_good_1.proto

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - python_bad_1.py
---
message: ************* Module python_bad_1\npython/python_bad_1.py 15 24 E0001 invalid syntax (<unknown>, line 15) (syntax-error)\n
...
ok 2 - python_good_1.py

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - python_bad_1.py
---
message: error cannot format /tmp/lint/.automation/test/python_black/python_bad_1.py Cannot parse 15 23 if github_token is None\nOh no! 💥 💔 💥\n1 file would fail to reformat.\n
...
ok 2 - python_good_1.py

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - python_bad_1.py
---
message: ************* Module python_bad_1\npython/python_bad_1.py 15 24 E0001 invalid syntax (<unknown>, line 15) (syntax-error)\n
...
ok 2 - python_good_1.py

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - python_bad_1.py
---
message: /tmp/lint/.automation/test/python_flake8/python_bad_1.py 6 13 E261 at least two spaces before inline comment\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 7 31 E261 at least two spaces before inline comment\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 8 16 E261 at least two spaces before inline comment\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 11 67 E202 whitespace before ')'\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 13 1 E128 continuation line under-indented for visual indent\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 15 23 E999 SyntaxError invalid syntax\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 16 5 E113 unexpected indentation\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 17 9 E128 continuation line under-indented for visual indent\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 18 9 E128 continuation line under-indented for visual indent\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 27 1 E302 expected 2 blank lines, found 1\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 56 1 E302 expected 2 blank lines, found 1\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 66 24 E201 whitespace after '{'\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 87 1 E302 expected 2 blank lines, found 1\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 110 1 E302 expected 2 blank lines, found 1\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 153 1 E305 expected 2 blank lines after class or function definition, found 1\n/tmp/lint/.automation/test/python_flake8/python_bad_1.py 156 18 E261 at least two spaces before inline comment\n
...
ok 2 - python_good_1.py

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - python_bad_1.py
---
message: ************* Module python_bad_1\npython/python_bad_1.py 15 24 E0001 invalid syntax (<unknown>, line 15) (syntax-error)\n
...
ok 2 - python_good_1.py

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - python_bad_1.py
---
message: ERROR /tmp/lint/.automation/test/python_isort/python_bad_1.py Imports are incorrectly sorted and/or formatted.\n--- /tmp/lint/.automation/test/python_isort/python_bad_1.py before\n+++ /tmp/lint/.automation/test/python_isort/python_bad_1.py before\n@@ -1,11 +1,11 @@\n import json\n+import sys\n from os import getenv, path\n from pprint import pprint\n-import sys\n \n import click # pylint disable=import-error\n+import requests # pylint disable=import-error\n from dotenv import load_dotenv # pylint disable=import-error\n-import requests # pylint disable=import-error\n \n env = load_dotenv()\n api_url = getenv("API_URL", default="https //api.github.com/graphql")\n
...
ok 2 - python_good_1.py

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - python_bad_1.py
---
message: ************* Module python_bad_1\npython/python_bad_1.py 15 24 E0001 invalid syntax (<unknown>, line 15) (syntax-error)\n
...
ok 2 - python_good_1.py

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - python_bad_1.py
---
message: ************* Module python_bad_1\npython_pylint/python_bad_1.py 15 24 E0001 invalid syntax (<unknown>, line 15) (syntax-error)\n
...
ok 2 - python_good_1.py

File diff suppressed because one or more lines are too long

View file

@ -4,4 +4,4 @@ not ok 1 - raku_bad_1.raku
---
message: ===SORRY!=== Error while compiling /tmp/lint/.automation/test/raku/raku_bad_1.raku\nVariable '$foo' is not declared. Did you mean '@foo'?\nat /tmp/lint/.automation/test/raku/raku_bad_1.raku 4\n------> <BOL>⏏$foo[1] = 42\n
...
ok 2 - /tmp/lint/.automation/test/raku/raku_good_1.raku
ok 2 - raku_good_1.raku

View file

@ -4,4 +4,4 @@ not ok 1 - ruby_bad_1.rb
---
message: Inspecting 1 file\nC\n\nOffenses \n\nruby/ruby_bad_1.rb 1 1 C Style/FrozenStringLiteralComment Missing frozen string literal comment.\nruby/ruby_bad_1.rb 11 11 C Style/StringLiterals Prefer double-quoted strings unless you need single quotes to avoid extra backslashes for escaping.\nFile.open('/tmp/urls.txt', " w" ) do | file|\n ^^^^^^^^^^^^^^^\nruby/ruby_bad_1.rb 11 32 C Layout/SpaceInsideParens Space inside parentheses detected.\nFile.open('/tmp/urls.txt', " w" ) do | file|\n ^\nruby/ruby_bad_1.rb 11 39 C Layout/SpaceAroundBlockParameters Space before first block parameter detected.\nFile.open('/tmp/urls.txt', " w" ) do | file|\n ^\nruby/ruby_bad_1.rb 12 24 C Layout/SpaceAroundBlockParameters Space after last block parameter detected.\n Hook.active.map do |h |\n ^\nruby/ruby_bad_1.rb 13 13 C Layout/SpaceInsideArrayLiteralBrackets Do not use space inside array brackets.\n urls = [ ARRAY_OF_URLS_CALLING_INSTANCE]\n ^\n\n1 file inspected, 6 offenses detected\n
...
ok 2 - /tmp/lint/.automation/test/ruby/ruby_good_1.rb
ok 2 - ruby_good_1.rb

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - shell-shfmt_bad_1.sh
---
message: --- /tmp/lint/.automation/test/shell_shfmt/shell-shfmt_bad_1.sh.orig\n+++ /tmp/lint/.automation/test/shell_shfmt/shell-shfmt_bad_1.sh\n@@ -8,10 +8,10 @@\n \n # Check the shell\n if [ ${ERROR_CODE} -ne 0 ]; then\n- echo "We did it!"\n- exit 0\n+ echo "We did it!"\n+ exit 0\n else\n- echo "We done goofed it..."\n- echo "${HELLO_WORLD}"\n- exit 1\n+ echo "We done goofed it..."\n+ echo "${HELLO_WORLD}"\n+ exit 1\n fi\n
...
ok 2 - shell-shfmt_good_1.sh

0
.automation/test/shell_shfmt/shell-shfmt_bad_1.sh Normal file → Executable file
View file

0
.automation/test/shell_shfmt/shell-shfmt_good_1.sh Normal file → Executable file
View file

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - snakemake_bad_1.smk
---
message: Lints for rule simulation (line 11, /tmp/lint/.automation/test/snakemake_lint/snakemake_bad_1.smk) \n * No log directive defined \n Without a log directive, all output will be printed to the terminal. In\n distributed environments, this means that errors are harder to discover.\n In local environments, output of concurrent jobs will be mixed and become\n unreadable.\n Also see \n https //snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files\n * Specify a conda environment or container for each rule. \n This way, the used software for each specific step is documented, and the\n workflow can be executed on any machine without prerequisites.\n Also see \n https //snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management\n https //snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers\n
...
ok 2 - snakemake_good_1.smk

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - snakemake_bad_1.smk
---
message: =====> Diff for /tmp/lint/.automation/test/snakemake_snakefmt/snakemake_bad_1.smk <=====\n\n--- original\n+++ new\n@@ -1,10 +1,11 @@\n rule all \n input \n- file1='result.txt',\n+ file1="result.txt",\n+\n \n rule simulation \n output \n- file1="result.txt"\n+ file1="result.txt",\n shell \n """\n touch {output}\n\n[INFO] 1 file(s) would be changed 😬\n
...
ok 2 - snakemake_good_1.smk

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - sql_bad_1.sql
---
message: /tmp/lint/.automation/test/sql/sql_bad_1.sql 1 [sql-lint missing-where] DELETE statement missing WHERE clause.\n
...
ok 2 - sql_good_1.sql

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - states_bad_1.json
---
message: ✕ State machine definition is invalid \n \ndata.States['Hello World'] should NOT have additional properties\ndata.States['Hello World'] should NOT have additional properties\ndata.States['Hello World'] should NOT have additional properties\ndata.States['Hello World'] should NOT have additional properties\ndata.States['Hello World'] should NOT have additional properties\ndata.States['Hello World'] should have required property 'Type'\ndata.States['Hello World'] should NOT have additional properties\ndata.States['Hello World'] should NOT have additional properties\ndata.States['Hello World'] should match exactly one schema in oneOf\n
...
ok 2 - states_good_1.json

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - json_bad_1.json
---
message: Error Parse error on line 6 \n...ng" { "level" 'ignore', "space\n----------------------^\nExpecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined'\n at Object.parseError (/node_modules/jsonlint/lib/jsonlint.js 55 11)\n at Object.parse (/node_modules/jsonlint/lib/jsonlint.js 132 22)\n at parse (/node_modules/jsonlint/lib/cli.js 82 14)\n at main (/node_modules/jsonlint/lib/cli.js 135 14)\n at Object.<anonymous> (/node_modules/jsonlint/lib/cli.js 179 1)\n at Module._compile (internal/modules/cjs/loader.js 1138 30)\n at Object.Module._extensions..js (internal/modules/cjs/loader.js 1158 10)\n at Module.load (internal/modules/cjs/loader.js 986 32)\n at Function.Module._load (internal/modules/cjs/loader.js 879 14)\n at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js 71 12)\n
...
ok 2 - json_good_1.json

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - tekton_bad_1.yml
---
message: /tmp/lint/.automation/test/tekton/bad/tekton_bad_1.yml \nwarning (20,14,20,20) Invalid image 'ubuntu'. Specify the image tag instead of using ' latest'\nwarning (22,14,22,51) Invalid image 'gcr.io/example-builders/build-example'. Specify the image tag instead of using ' latest'\nwarning (26,14,26,50) Invalid image 'gcr.io/example-builders/push-example'. Specify the image tag instead of using ' latest'\nerror (29,17,29,31) Task 'example-task-name' wants to mount volume 'example-volume' in step 'dockerfile-pushexample', but this volume is not defined.\n
...
ok 2 - tekton_good_1.yml

View file

@ -4,4 +4,4 @@ not ok 1 - terraform_bad_1.tf
---
message: Failed to load configurations. 1 error(s) occurred \n\nError Invalid expression\n\n on /tmp/lint/.automation/test/terraform/bad/terraform_bad_1.tf line 3, in resource "aws_instance" "bad" \n 3 instance_type = # invalid type!\n 4 }\n\nExpected the start of an expression, but found an invalid expression token.\n
...
ok 2 - /tmp/lint/.automation/test/terraform/good/terraform_good_1.tf
ok 2 - terraform_good_1.tf

View file

@ -1,22 +0,0 @@
TAP version 13
1..2
not ok 1 - terraform_bad_1.tf
terrascan version 0.2.3
Logging level set to error.
........................................................................
----------------------------------------------------------------------
Ran 72 tests in 0.008s
OK
Processed 1 files in /tmp/lint/.terrascan
Processed on 07/24/2020 at 03:22
Results (took 0.42 seconds):
Failures: (1)
[high] [aws_instance.bad.associate_public_ip_address] should not be 'True'. Is: 'True' in module .terrascan, file /tmp/lint/.terrascan/terraform_bad_1.tf
Errors: (0)
ok 2 - terraform_good_1.tf

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - terraform_bad_1.tf
---
message: results \n violations \n - rule_name instanceWithNoVpc\n description Instance should be configured in vpc. AWS VPCs provides the controls to facilitate a formal process for approving and testing all network connections and changes to the firewall and router configurations.\n rule_id AWS.Instance.NetworkSecurity.Medium.0506\n severity MEDIUM\n category Network Security\n resource_name instanceWithNoVpc\n resource_type aws_instance\n file terraform_bad_1.tf\n line 1\n count \n low 0\n medium 1\n high 0\n total 1\n
...
ok 2 - terraform_good_1.tf

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - terragrunt_bad_1.hcl
---
message: [terragrunt] Formatting terragrunt.hcl file at /tmp/lint/.automation/test/terragrunt/terragrunt_bad_1.hcl.\n[terragrunt] Formatting /tmp/lint/.automation/test/terragrunt/terragrunt_bad_1.hcl\n[terragrunt] Invalid file format /tmp/lint/.automation/test/terragrunt/terragrunt_bad_1.hcl\n[terragrunt] Unable to determine underlying exit code, so Terragrunt will exit with error code 1\n
...
ok 2 - terragrunt_good_1.hcl

View file

@ -4,4 +4,4 @@ not ok 1 - typescript_bad_1.ts
---
message: \n/tmp/lint/.automation/test/typescript_es/typescript_bad_1.ts\n 5 39 error Parsing error Unterminated regular expression literal\n\n✖ 1 problem (1 error, 0 warnings)\n
...
ok 2 - /tmp/lint/.automation/test/typescript_es/typescript_good_1.ts
ok 2 - typescript_good_1.ts

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - typescript_bad_1.ts
---
message: standard Use JavaScript Standard Style (https //standardjs.com)\n /tmp/lint/.automation/test/typescript/typescript_bad_1.ts 5 39 Parsing error Unterminated regular expression literal.\n
...
ok 2 - typescript_good_1.ts

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - typescript_bad_1.ts
---
message: \n/tmp/lint/.automation/test/typescript/typescript_bad_1.ts\n 5 39 error Parsing error Unterminated regular expression literal\n\n✖ 1 problem (1 error, 0 warnings)\n
...
ok 2 - typescript_good_1.ts

View file

@ -4,4 +4,4 @@ not ok 1 - typescript_bad_1.ts
---
message: standard Use JavaScript Standard Style (https //standardjs.com)\n /tmp/lint/.automation/test/typescript_standard/typescript_bad_1.ts 5 39 Parsing error Unterminated regular expression literal.\n
...
ok 2 - /tmp/lint/.automation/test/typescript_standard/typescript_good_1.ts
ok 2 - typescript_good_1.ts

View file

@ -4,4 +4,4 @@ not ok 1 - xml_bad_1.xml
---
message: /tmp/lint/.automation/test/xml/xml_bad_1.xml 7 parser error EndTag '</' not found\n\n^\n
...
ok 2 - /tmp/lint/.automation/test/xml/xml_good_1.xml
ok 2 - xml_good_1.xml

View file

@ -0,0 +1,7 @@
TAP version 13
1..2
not ok 1 - yml_bad_1.yml
---
message: /tmp/lint/.automation/test/yaml/yml_bad_1.yml\n 10 1 warning missing document start "---" (document-start)\n 11 16 error syntax error mapping values are not allowed here (syntax)\n
...
ok 2 - yml_good_1.yml

View file

@ -1,7 +0,0 @@
TAP version 13
1..2
not ok 1 - yml_bad_1.yml
---
message: /tmp/lint/.automation/test/yml/yml_bad_1.yml\n 10 1 warning missing document start "---" (document-start)\n 11 16 error syntax error mapping values are not allowed here (syntax)\n
...
ok 2 - /tmp/lint/.automation/test/yaml/yml_good_1.yml

View file

@ -68,7 +68,7 @@ jobs:
#####################################
- name: Run Test Cases
shell: bash
run: docker run -e RUN_LOCAL=true -e TEST_CASE_RUN=true -e OUTPUT_FORMAT=tap -e OUTPUT_FOLDER=${GITHUB_SHA} -e OUTPUT_DETAILS=detailed -e ACTIONS_RUNNER_DEBUG=true -v ${GITHUB_WORKSPACE}:/tmp/lint github/super-linter:${GITHUB_SHA}
run: docker run -e RUN_LOCAL=true -e TEST_CASE_RUN=true -e OUTPUT_FORMAT=tap -e OUTPUT_FOLDER=${GITHUB_SHA} -e OUTPUT_DETAILS=detailed -e ACTIONS_RUNNER_DEBUG=true -e ERROR_ON_MISSING_EXEC_BIT=true -v ${GITHUB_WORKSPACE}:/tmp/lint github/super-linter:${GITHUB_SHA}
#########################################
# Clean code base to run against it all #
@ -82,4 +82,4 @@ jobs:
############################################
- name: Run against all code base
shell: bash
run: docker run -e RUN_LOCAL=true -e OUTPUT_DETAILS=detailed -e ACTIONS_RUNNER_DEBUG=true -v ${GITHUB_WORKSPACE}:/tmp/lint github/super-linter:${GITHUB_SHA}
run: docker run -e RUN_LOCAL=true -e OUTPUT_DETAILS=detailed -e ACTIONS_RUNNER_DEBUG=true -e ERROR_ON_MISSING_EXEC_BIT=true -v ${GITHUB_WORKSPACE}:/tmp/lint github/super-linter:${GITHUB_SHA}

View file

@ -48,5 +48,6 @@ jobs:
uses: docker://ghcr.io/github/super-linter:latest
env:
ACTIONS_RUNNER_DEBUG: true
ERROR_ON_MISSING_EXEC_BIT: true
VALIDATE_ALL_CODEBASE: false
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0
.vscode/testlinter.sh vendored Normal file → Executable file
View file

View file

@ -244,7 +244,7 @@ function BuildFileList() {
# Get the DOCKER files #
########################
# Use BASE_FILE here because FILE_TYPE is not reliable when there is no file extension
elif [[ "${FILE_TYPE}" != "dockerfilelintrc" ]] && [[ "${BASE_FILE}" == *"dockerfile"* ]]; then
elif [[ "${FILE_TYPE}" != "dockerfilelintrc" ]] && [[ "${FILE_TYPE}" != "tap" ]] && [[ "${BASE_FILE}" == *"dockerfile"* ]]; then
################################
# Append the file to the array #
################################

View file

@ -21,10 +21,24 @@ function IsTAP() {
function TransformTAPDetails() {
DATA=${1}
if [ -n "${DATA}" ] && [ "${OUTPUT_DETAILS}" == "detailed" ]; then
#########################################################
# Transform new lines to \\n, remove colours and colons #
#########################################################
echo "${DATA}" | awk 'BEGIN{RS="\n";ORS="\\n"}1' | sed -r "s/\x1B\[([0-9]{1,3}(;[0-9]{1,2})?)?[mGK]//g" | tr ':' ' '
############################################################
# Transform new lines to \\n, remove colours and colons. #
# Additionally, remove some dynamic parts from generated #
# reports. #
############################################################
echo "${DATA}" |
awk 'BEGIN{RS="\n";ORS="\\n"}1' |
sed -r "s/\x1B\[([0-9]{1,3}(;[0-9]{1,2})?)?[mGK]//g" |
sed 's/\x1B\[[0-9;]\{1,\}[A-Za-z]//g' |
sed -r "s/\s\([0-9]*\sms\)//g" |
sed -r "s/\s[0-9]*ms//g" |
sed -r "s/S[0-9]{4}//g" |
sed -r "s/js:[0-9]*:[0-9]*/js/g" |
sed -r "s/[.0-9]*\sseconds/seconds/g" |
sed -r "s/\[terragrunt\]\s[0-9]{4}\/[0-9]{2}\/[0-9]{2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}/[terragrunt]/g" |
sed -r "s/(after|before)\s[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{1,6}/before/g" |
sed -r "s/used\s[0-9]{1,}\.*[0-9]{0,}MB\sof\smemory/used/g" |
tr ':' ' '
fi
}
################################################################################
@ -113,11 +127,5 @@ Reports() {
warn "Report output folder (${REPORT_OUTPUT_FOLDER}) does NOT exist."
fi
fi
################################
# Prints for warnings if found #
################################
for TEST in "${WARNING_ARRAY_TEST[@]}"; do
warn "Expected file to compare with was not found for ${TEST}"
done
}
################################################################################

View file

@ -292,7 +292,7 @@ function LintCodebase() {
# Store the linting as a temporary file in TAP format #
#######################################################
if IsTAP; then
NotOkTap "${INDEX}" "${FILE}" "${TMPFILE}"
NotOkTap "${INDEX}" "${FILE_NAME}" "${TMPFILE}"
AddDetailedMessageIfEnabled "${LINT_CMD}" "${TMPFILE}"
fi
else
@ -305,7 +305,7 @@ function LintCodebase() {
# Store the linting as a temporary file in TAP format #
#######################################################
if IsTAP; then
OkTap "${INDEX}" "${FILE}" "${TMPFILE}"
OkTap "${INDEX}" "${FILE_NAME}" "${TMPFILE}"
fi
fi
else
@ -361,21 +361,13 @@ function LintCodebase() {
#############################################
# We failed to compare the reporting output #
#############################################
error "Failed to assert TAP output:[${LINTER_NAME}]"!
info "Please validate the asserts!"
cat "${TMPFILE}"
exit 1
fatal "Failed to assert TAP output for ${LINTER_NAME} linter"
else
# Success
info "Successfully validation in the expected TAP format for ${F[W]}[${LINTER_NAME}]"
info "TAP output validated successfully for ${LINTER_NAME}"
fi
else
warn "No TAP expected file found at:[${EXPECTED_FILE}]"
info "skipping report assertions"
#####################################
# Append the file type to the array #
#####################################
WARNING_ARRAY_TEST+=("${FILE_TYPE}")
fatal "No TAP expected file found at:[${EXPECTED_FILE}]"
fi
fi
fi
@ -512,7 +504,7 @@ function LintAnsibleFiles() {
# Store the linting as a temporary file in TAP format #
#######################################################
if IsTAP; then
NotOkTap "${INDEX}" "${FILE}" "${TMPFILE}"
NotOkTap "${INDEX}" "${FILE_NAME}" "${TMPFILE}"
AddDetailedMessageIfEnabled "${LINT_CMD}" "${TMPFILE}"
fi
@ -526,7 +518,7 @@ function LintAnsibleFiles() {
# Store the linting as a temporary file in TAP format #
#######################################################
if IsTAP; then
OkTap "${INDEX}" "${FILE}" "${TMPFILE}"
OkTap "${INDEX}" "${FILE_NAME}" "${TMPFILE}"
fi
fi
done

View file

@ -265,8 +265,6 @@ RAW_FILE_ARRAY=() # Array of all files that were changed
export RAW_FILE_ARRAY # Workaround SC2034
TEST_CASE_FOLDER='.automation/test' # Folder for test cases we should always ignore
export TEST_CASE_FOLDER # Workaround SC2034
WARNING_ARRAY_TEST=() # Array of warning linters that did not have an expected test result.
export WARNING_ARRAY_TEST # Workaround SC2034
##############
# Format #