mirror of
https://github.com/super-linter/super-linter.git
synced 2024-11-29 01:21:05 -05:00
remove tap and tests (#1496)
* remove tap and tests * fix proto * remove dumb test
This commit is contained in:
parent
0c8db849aa
commit
5f5904883d
85 changed files with 6 additions and 917 deletions
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - ansible_bad_1.yml
|
|
||||||
---
|
|
||||||
message: DEBUG Logging initialized to level 10\nDEBUG Options Namespace(colored=False, cwd=PosixPath('/tmp/lint/.automation/test/ansible'), display_relative_path=True, exclude_paths=[], lintables=['/tmp/lint/.automation/test/ansible/ansible_bad_1.yml'], listrules=False, listtags=False, parseable=True, parseable_severity=False, quiet=True, rulesdirs=['/usr/local/lib/python3.9/site-packages/ansiblelint/rules'], skip_list=['empty-string-compare', '204', 'no-changed-when', 'command-instead-of-module', 'command-instead-of-shell', 'no-handler'], tags=[], verbosity=2, warn_list=['experimental'], kinds=[{'requirements' '**/meta/requirements.yml'}, {'reno' '**/releasenotes/*/*.{yaml,yml}'}, {'playbook' '**/playbooks/*.{yml,yaml}'}, {'playbook' '**/*playbook*.{yml,yaml}'}, {'role' '**/roles/*/'}, {'tasks' '**/tasks/**/*.{yaml,yml}'}, {'handlers' '**/handlers/*.{yaml,yml}'}, {'vars' '**/{host_vars,group_vars,vars,defaults}/**/*.{yaml,yml}'}, {'meta' '**/meta/main.{yaml,yml}'}, {'yaml' '.config/molecule/config.{yaml,yml}'}, {'requirements' '**/molecule/*/{collections,requirements}.{yaml,yml}'}, {'yaml' '**/molecule/*/{base,molecule}.{yaml,yml}'}, {'requirements' '**/requirements.yml'}, {'playbook' '**/molecule/*/*.{yaml,yml}'}, {'yaml' '**/*.{yaml,yml}'}, {'yaml' '**/.*.{yaml,yml}'}], mock_modules=[], mock_roles=[], loop_var_prefix=None, offline=False, project_dir='../../../.github/linters', extra_vars=None, enable_list=[], skip_action_validation=True, format='rich', progressive=False, rulesdir=[], use_default_rules=True, config_file='/tmp/lint/.github/linters/.ansible-lint.yml', version=False)\nDEBUG Loading rules from /usr/local/lib/python3.9/site-packages/ansiblelint/rules\nWARNING Overriding detected file kind 'yaml' with 'playbook' for given positional argument /tmp/lint/.automation/test/ansible/ansible_bad_1.yml\nINFO Discovering files to lint git ls-files -z *.yaml *.yml\nINFO Executing syntax check on ansible_bad_1.yml \nWARNING Listing 1 violation(s) that are fatal\nansible_bad_1.yml 24 7 internal-error\n
|
|
||||||
...
|
|
||||||
ok 2 - ansible_good_1.yml
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - ansible_bad_1.yml
|
|
||||||
---
|
|
||||||
message: WARNING Overriding detected file kind 'yaml' with 'playbook' for given positional argument /tmp/lint/.automation/test/ansible/ansible_bad_1.yml\nINFO Executing syntax check on ansible_bad_1.yml \nWARNING Listing 1 violation(s) that are fatal\nansible_bad_1.yml 24 7 internal-error\n
|
|
||||||
...
|
|
||||||
ok 2 - ansible_good_1.yml
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - ansible_bad_1.yml
|
|
||||||
---
|
|
||||||
message: DEBUG Logging initialized to level 10\nDEBUG Options Namespace(colored=False, cwd=PosixPath('/tmp/lint/.automation/test/ansible'), display_relative_path=True, exclude_paths=[], lintables=['/tmp/lint/.automation/test/ansible/ansible_bad_1.yml'], listrules=False, listtags=False, parseable=True, parseable_severity=False, quiet=True, rulesdirs=['/usr/local/lib/python3.9/site-packages/ansiblelint/rules'], skip_list=['empty-string-compare', '204', 'no-changed-when', 'command-instead-of-module', 'command-instead-of-shell', 'no-handler'], tags=[], verbosity=2, warn_list=['experimental'], kinds=[{'requirements' 'requirements.yml'}, {'requirements' '**/meta/requirements.yml'}, {'reno' 'releasenotes/*/*.{yaml,yml}'}, {'playbook' '**/playbooks/*.{yml,yaml}'}, {'playbook' '**/*playbook*.{yml,yaml}'}, {'role' '**/roles/*/'}, {'tasks' '**/tasks/*.{yaml,yml}'}, {'handlers' '**/handlers/*.{yaml,yml}'}, {'vars' '**/{host_vars,group_vars,vars,defaults}/**/*.{yaml,yml}'}, {'meta' '**/meta/main.{yaml,yml}'}, {'yaml' '.config/molecule/config.{yaml,yml}'}, {'requirements' '**/molecule/*/collections.{yaml,yml}'}, {'yaml' '**/molecule/*/{base,molecule}.{yaml,yml}'}, {'playbook' '**/molecule/*/*.{yaml,yml}'}, {'yaml' '**/*.{yaml,yml}'}, {'yaml' '**/.*.{yaml,yml}'}], mock_modules=[], mock_roles=[], loop_var_prefix=None, offline=False, extra_vars=None, skip_action_validation=True, format='rich', progressive=False, rulesdir=[], use_default_rules=True, config_file='/tmp/lint/.github/linters/.ansible-lint.yml', version=False)\nDEBUG Loading rules from /usr/local/lib/python3.9/site-packages/ansiblelint/rules\nWARNING Overriding detected file kind 'yaml' with 'playbook' for given positional argument /tmp/lint/.automation/test/ansible/ansible_bad_1.yml\nINFO Discovering files to lint git ls-files -z *.yaml *.yml\nINFO Executing syntax check on ansible_bad_1.yml \nWARNING Listing 1 violation(s) that are fatal\ninternal-error ansible_bad_1.yml 24 7\n
|
|
||||||
...
|
|
||||||
ok 2 - ansible_good_1.yml
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - arm_bad_1.json
|
|
||||||
---
|
|
||||||
message: \nValidating arm\arm_good_1.json\n deploymentTemplate\n [+] adminUsername Should Not Be A Literal\n [+] apiVersions Should Be Recent\n [+] artifacts parameter\n [+] CommandToExecute Must Use ProtectedSettings For Secrets\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 [-] Resources Should Not Be Ambiguous\n At least one parameter must preceed the resource type Index 2132\n\n [+] Secure String Parameters Cannot Have Default\n [+] Template Should Not Contain Blanks\n [+] Variables Must Be Referenced\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
|
|
|
@ -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\n [+] apiVersions Should Be Recent\n [+] artifacts parameter\n [+] CommandToExecute Must Use ProtectedSettings For Secrets\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 [+] providers apiVersions Is Not Permitted\n [+] ResourceIds should not contain\n [+] Resources Should Have Location\n [+] Resources Should Not Be Ambiguous\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
|
|
|
@ -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\n [+] apiVersions Should Be Recent\n [+] artifacts parameter\n [+] CommandToExecute Must Use ProtectedSettings For Secrets\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 [+] providers apiVersions Is Not Permitted\n [+] ResourceIds should not contain\n [+] Resources Should Have Location\n [+] Resources Should Not Be Ambiguous\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
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 - shell_good_1.sh
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
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, errors 13, warnings 9\n
|
|
||||||
...
|
|
||||||
ok 2 - clojure_good_1.clj
|
|
|
@ -1,16 +0,0 @@
|
||||||
{
|
|
||||||
"Resources" : {
|
|
||||||
"myDNSRecord" : {
|
|
||||||
"Type" : "AWS::Route53::RecordSet",
|
|
||||||
"Properties" : {
|
|
||||||
"HostedZoneId" : "Z8VLZEXAMPLE",
|
|
||||||
"Name" : "test.example.com",
|
|
||||||
"ResourceRecords" : [
|
|
||||||
"192.0.2.99"
|
|
||||||
],
|
|
||||||
"Ttl" : 300,
|
|
||||||
"Type" : "A"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
Resources:
|
|
||||||
myDNSRecord:
|
|
||||||
Type: AWS::Route53::RecordSet
|
|
||||||
Properties:
|
|
||||||
HostedZoneId : Z8VLZEXAMPLE
|
|
||||||
Name: test.example.com
|
|
||||||
ResourceRecords:
|
|
||||||
- 192.0.2.99
|
|
||||||
Ttl: 900
|
|
||||||
Type: A
|
|
|
@ -1,16 +0,0 @@
|
||||||
{
|
|
||||||
"Resources": {
|
|
||||||
"myDNSRecord": {
|
|
||||||
"Type": "AWS::Route53::RecordSet",
|
|
||||||
"Properties": {
|
|
||||||
"HostedZoneId": "Z8VLZEXAMPLE",
|
|
||||||
"Name": "test.example.com",
|
|
||||||
"ResourceRecords": [
|
|
||||||
"192.0.2.99"
|
|
||||||
],
|
|
||||||
"TTL": 300,
|
|
||||||
"Type": "A"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
Resources:
|
|
||||||
myDNSRecord:
|
|
||||||
Type: AWS::Route53::RecordSet
|
|
||||||
Properties:
|
|
||||||
HostedZoneId : Z8VLZEXAMPLE
|
|
||||||
Name: test.example.com
|
|
||||||
ResourceRecords:
|
|
||||||
- 192.0.2.99
|
|
||||||
TTL: 900
|
|
||||||
Type: A
|
|
|
@ -1,22 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..8
|
|
||||||
not ok 1 - cloudformation_bad_1.json
|
|
||||||
---
|
|
||||||
message: E3001 Invalid or unsupported Type AWS Route53 HostedZonee for resource DNS in us-east-1\n/tmp/lint/.automation/test/cloudformation/cloudformation_bad_1.json 6 10\n
|
|
||||||
...
|
|
||||||
not ok 2 - cloudformation_bad_2.yaml
|
|
||||||
---
|
|
||||||
message: E3001 Invalid or unsupported Type AWS Route53 HostedZonee for resource DNS in us-east-1\n/tmp/lint/.automation/test/cloudformation/cloudformation_bad_2.yaml 5 5\n
|
|
||||||
...
|
|
||||||
not ok 3 - cloudformation_bad_3.json
|
|
||||||
---
|
|
||||||
message: E3002 Invalid Property Resources/myDNSRecord/Properties/Ttl\n/tmp/lint/.automation/test/cloudformation/cloudformation_bad_3.json 11 13\n
|
|
||||||
...
|
|
||||||
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 - cloudformation_good_1.json
|
|
||||||
ok 6 - cloudformation_good_2.yaml
|
|
||||||
ok 7 - cloudformation_good_3.json
|
|
||||||
ok 8 - cloudformation_good_4.yaml
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 - coffeescript_good_1.coffee
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -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
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 - dart_good_1.dart
|
|
|
@ -1,8 +0,0 @@
|
||||||
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
|
|
|
@ -1,8 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..3
|
|
||||||
not ok 1 - Dockerfile
|
|
||||||
---
|
|
||||||
message: /tmp/lint/.automation/test/dockerfile_hadolint/bad/Dockerfile 1 DL3007 warning 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 error COPY with more than 2 arguments requires the last argument to end with /\n/tmp/lint/.automation/test/dockerfile_hadolint/bad/Dockerfile 9 DL3004 error 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 error Use COPY instead of ADD for files and folders\n/tmp/lint/.automation/test/dockerfile_hadolint/bad/Dockerfile 14 DL3025 warning Use arguments JSON notation for CMD and ENTRYPOINT arguments\n
|
|
||||||
...
|
|
||||||
ok 2 - Dockerfile
|
|
||||||
ok 3 - Dockerfile.dev
|
|
|
@ -1,10 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - env_bad_1.env
|
|
||||||
---
|
|
||||||
message: Checking env/env_bad_1.env\nenv/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 - env_good_1.env
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - golang_bad_01.go
|
|
||||||
---
|
|
||||||
message: level=warningg="[runner] Can't run linter goanalysis_metalinter failed prerequisites [buildir@command-line-arguments analysis skipped errors in package [go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if']"\n
|
|
||||||
...
|
|
||||||
ok 2 - golang_good_01.go
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - golang_bad_01.go
|
|
||||||
---
|
|
||||||
message: level=warningg="[runner] Can't run linter goanalysis_metalinter failed prerequisites [(buildir@command-line-arguments, inspect@command-line-arguments, isgenerated@command-line-arguments) analysis skipped errors in package [go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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\nexpected 'package', found 'if' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if']"
|
|
||||||
...
|
|
||||||
ok 2 - golang_good_01.go
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - golang_bad_01.go
|
|
||||||
---
|
|
||||||
message: level=warningg="[runner] The linter 'maligned' is deprecated due to The repository of the linter has been archived by the owner. Use govet 'fieldalignment' instead."\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' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if']"\n
|
|
||||||
...
|
|
||||||
ok 2 - golang_good_01.go
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - golang_bad_01.go
|
|
||||||
---
|
|
||||||
message: level=warningg="[runner] The linter 'maligned' is deprecated (since v1.38.0) due to The repository of the linter has been archived by the owner. Replaced by govet 'fieldalignment'."\ngo/golang_bad_01.go 1 1 expected 'package', found 'if' (typecheck)\nif len(in) == 0 {\n^\n
|
|
||||||
...
|
|
||||||
ok 2 - golang_good_01.go
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - golang_bad_01.go
|
|
||||||
---
|
|
||||||
message: level=warningg="[runner] The linter 'maligned' is deprecated due to The repository of the linter has been archived by the owner. Use govet 'fieldalignment' instead."\nlevel=warningg="[runner] Can't run linter goanalysis_metalinter failed prerequisites [(buildir@command-line-arguments, inspect@command-line-arguments, isgenerated@command-line-arguments) analysis skipped errors in package [go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if']"\n
|
|
||||||
...
|
|
||||||
ok 2 - golang_good_01.go
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - golang_bad_01.go
|
|
||||||
---
|
|
||||||
message: level=warningg="[runner] The linter 'maligned' is deprecated due to The repository of the linter has been archived by the owner. Use govet 'fieldalignment' instead."\nlevel=warningg="[runner] Can't run linter goanalysis_metalinter failed prerequisites [inspect@command-line-arguments analysis skipped errors in package [go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if']"\n
|
|
||||||
...
|
|
||||||
ok 2 - golang_good_01.go
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - golang_bad_01.go
|
|
||||||
---
|
|
||||||
message: level=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' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/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' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if' /tmp/lint/.automation/test/go/golang_bad_01.go 1 1 expected 'package', found 'if']"\n
|
|
||||||
...
|
|
||||||
ok 2 - golang_good_01.go
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
File diff suppressed because one or more lines are too long
|
@ -1,12 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..4
|
|
||||||
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
|
|
||||||
...
|
|
||||||
not ok 2 - java_bad_2.java
|
|
||||||
---
|
|
||||||
message: Starting audit...\n[ERROR] /tmp/lint/.automation/test/java/java_bad_2.java 1 1 Utility classes should not have a public or default constructor. [HideUtilityClassConstructor]\nAudit done.\nCheckstyle ends with 1 errors.\n
|
|
||||||
...
|
|
||||||
ok 3 - java_good_1.java
|
|
||||||
ok 4 - java_good_2.java
|
|
|
@ -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 5 9 error Parsing error Unterminated regular expression literal\n\n 1 problem (1 error, 0 warnings)\n
|
|
||||||
...
|
|
||||||
ok 2 - javascript_good_1.js
|
|
|
@ -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_standard/javascript_bad_1.js Parsing error Unterminated regular expression\n
|
|
||||||
...
|
|
||||||
ok 2 - javascript_good_1.js
|
|
|
@ -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_standard/javascript_bad_1.js Parsing error Unterminated regular expression\n
|
|
||||||
...
|
|
||||||
ok 2 - javascript_good_1.js
|
|
|
@ -1,40 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..32
|
|
||||||
ok 1 - clojure_good_1.clj
|
|
||||||
ok 2 - coffeescript_good_1.coffee
|
|
||||||
ok 3 - csharp_good_01.cs
|
|
||||||
ok 4 - css_good_01.css
|
|
||||||
ok 5 - dart_good_1.dart
|
|
||||||
ok 6 - gherkin_good_01.feature
|
|
||||||
ok 7 - golang_good_01.go
|
|
||||||
ok 8 - Dockerfile
|
|
||||||
ok 9 - Dockerfile.dev
|
|
||||||
ok 10 - groovy_good_01.groovy
|
|
||||||
ok 11 - html_good_01.html
|
|
||||||
ok 12 - java_good_1.java
|
|
||||||
not ok 13 - javascript_bad_1.js
|
|
||||||
---
|
|
||||||
message: Clone found (javascript) \n - /tmp/lint/.automation/test/jscpd/javascript_bad_1.js [119 5 - 126 7] (7 lines, 82 tokens)\n /tmp/lint/.automation/test/jscpd/javascript_bad_1.js [66 5 - 73 5]\n\nClone found (javascript) \n - /tmp/lint/.automation/test/jscpd/javascript_bad_1.js [190 9 - 204 9] (14 lines, 145 tokens)\n /tmp/lint/.automation/test/jscpd/javascript_bad_1.js [61 9 - 75 3]\n\nClone found (javascript) \n - /tmp/lint/.automation/test/jscpd/javascript_bad_1.js [119 5 - 126 7] (7 lines, 82 tokens)\n /tmp/lint/.automation/test/jscpd/javascript_bad_1.js [66 5 - 73 5]\n\n 119 66 } \n 120 67 } \n 121 68 let body = [] \n 122 69 const req = https.request(options, (res) => { \n 123 70 res.on('data', (chunk) => { \n 124 71 body.push(chunk) \n 125 72 }).on('end', () => { \n 126 73 body = Buffer \n\nClone found (javascript) \n - /tmp/lint/.automation/test/jscpd/javascript_bad_1.js [190 9 - 204 9] (14 lines, 145 tokens)\n /tmp/lint/.automation/test/jscpd/javascript_bad_1.js [61 9 - 75 3]\n\n 190 61 , \n 191 62 method 'GET', \n 192 63 headers { \n 193 64 Authorization 'token ' + (process.env.GHE_TOKEN), \n 194 65 'Content-Type' 'application/json' \n 195 66 } \n 196 67 } \n 197 68 let body = [] \n 198 69 const req = https.request(options, (res) => { \n 199 70 res.on('data', (chunk) => { \n 200 71 body.push(chunk) \n 201 72 }).on('end', () => { \n 202 73 body = JSON.parse(Buffer.concat(body)) \n 203 74 body.forEach(item => { \n 204 75 orgRepos \n\nFound 2 clones.\nERROR jscpd found too many duplicates (9.81%) over threshold (0%)\nError ERROR jscpd found too many duplicates (9.81%) over threshold (0%)\n at ThresholdReporter.report (/node_modules/@jscpd/finder/dist/reporters/threshold.js)\n at /node_modules/@jscpd/finder/dist/in-files-detector.js\n at Array.forEach (<anonymous>)\n at /node_modules/@jscpd/finder/dist/in-files-detector.js\n at processTicksAndRejections (node internal/process/task_queues 94 5)\n
|
|
||||||
...
|
|
||||||
ok 14 - json_good_1.json
|
|
||||||
ok 15 - kotlint_good_1.kt
|
|
||||||
ok 16 - latex_good_1.tex
|
|
||||||
ok 17 - lua_good_1.lua
|
|
||||||
ok 18 - markdown_good_1.md
|
|
||||||
ok 19 - perl_good_1.pl
|
|
||||||
ok 20 - php_good_1.php
|
|
||||||
ok 21 - powershell_good_1.ps1
|
|
||||||
ok 22 - protobuf_good_1.proto
|
|
||||||
not ok 23 - python_bad_1.py
|
|
||||||
---
|
|
||||||
message: Clone found (python) \n - /tmp/lint/.automation/test/jscpd/python_bad_1.py [77 28 - 84 12] (7 lines, 77 tokens)\n /tmp/lint/.automation/test/jscpd/python_bad_1.py [50 27 - 55 2]\n\nClone found (python) \n - /tmp/lint/.automation/test/jscpd/python_bad_1.py [77 28 - 84 12] (7 lines, 77 tokens)\n /tmp/lint/.automation/test/jscpd/python_bad_1.py [50 27 - 55 2]\n\n 77 50 ), "r" \n 78 51 ) as query_file \n 79 52 query = "".join(query_file.readlines()) \n 80 53 \n 81 54 payload = {"query" query, "variables" query_variables} \n 82 55 response = requests.post(api_url, data=json.dumps(payload), headers=headers) \n 83 56 \n 84 57 status_code \n\nFound 1 clones.\nERROR jscpd found too many duplicates (3.61%) over threshold (0%)\nError ERROR jscpd found too many duplicates (3.61%) over threshold (0%)\n at ThresholdReporter.report (/node_modules/@jscpd/finder/dist/reporters/threshold.js)\n at /node_modules/@jscpd/finder/dist/in-files-detector.js\n at Array.forEach (<anonymous>)\n at /node_modules/@jscpd/finder/dist/in-files-detector.js\n at processTicksAndRejections (node internal/process/task_queues 94 5)\n
|
|
||||||
...
|
|
||||||
ok 24 - r_good_1.r
|
|
||||||
ok 25 - expected-JSCPD.tap
|
|
||||||
ok 26 - ruby_good_1.rb
|
|
||||||
ok 27 - shell_good_1.sh
|
|
||||||
ok 28 - sql_good_1.sql
|
|
||||||
ok 29 - typescript_good_1 copy.ts
|
|
||||||
ok 30 - typescript_good_1.ts
|
|
||||||
ok 31 - xml_good_1.xml
|
|
||||||
ok 32 - yml_good_1.yml
|
|
|
@ -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)\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 (node internal/modules/cjs/loader 1091 14)\n at Object.Module._extensions..js (node internal/modules/cjs/loader 1120 10)\n at Module.load (node internal/modules/cjs/loader 971 32)\n at Function.Module._load (node internal/modules/cjs/loader 812 14)\n at Function.executeUserEntryPoint [as runMain] (node internal/modules/run_main 76 12)\n
|
|
||||||
...
|
|
||||||
ok 2 - json_good_1.json
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - jsx_bad_1.jsx
|
|
||||||
---
|
|
||||||
message: \n/tmp/lint/.automation/test/jsx/jsx_bad_1.jsx\n 1 17 error Parsing error JSX element 'h1' has no corresponding closing tag\n\n 1 problem (1 error, 0 warnings)\n
|
|
||||||
...
|
|
||||||
ok 2 - jsx_good_1.jsx
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 - kotlint_good_1.kt
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,8 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..3
|
|
||||||
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 a 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 - markdown_good_1.md
|
|
|
@ -1,12 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..4
|
|
||||||
not ok 1 - openapi_bad_1.yml
|
|
||||||
---
|
|
||||||
message: OpenAPI 3.x detected\n\n/tmp/lint/.automation/test/openapi/openapi_bad_1.yml\n 1 1 warning info-contact Info object should contain `contact` object.\n 1 1 warning info-description OpenAPI object info `description` must be present and non-empty string.\n 1 1 warning oas3-api-servers OpenAPI `servers` must be present and non-empty array.\n 1 1 error oas3-schema Object should have required property `info`.\n 1 1 warning openapi-tags OpenAPI object should have non-empty `tags` array.\n\n 5 problems (1 error, 4 warnings, 0 infos, 0 hints)\n
|
|
||||||
...
|
|
||||||
not ok 2 - openapi_bad_2.json
|
|
||||||
---
|
|
||||||
message: OpenAPI 3.x detected\n\n/tmp/lint/.automation/test/openapi/openapi_bad_2.json\n 1 1 warning info-contact Info object should contain `contact` object.\n 1 1 warning info-description OpenAPI object info `description` must be present and non-empty string.\n 1 1 warning oas3-api-servers OpenAPI `servers` must be present and non-empty array.\n 1 1 error oas3-schema Object should have required property `info`.\n 1 1 warning openapi-tags OpenAPI object should have non-empty `tags` array.\n\n 5 problems (1 error, 4 warnings, 0 infos, 0 hints)\n
|
|
||||||
...
|
|
||||||
ok 3 - openapi_good_1.yml
|
|
||||||
ok 4 - openapi_good_2.json
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 - perl_good_1.pl
|
|
|
@ -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_builtin/php_bad_1.php on line 3\nErrors parsing /tmp/lint/.automation/test/php_builtin/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_builtin/php_bad_2.php on line 15\nErrors parsing /tmp/lint/.automation/test/php_builtin/php_bad_2.php\n
|
|
||||||
...
|
|
||||||
ok 3 - php_good_1.php
|
|
||||||
ok 4 - php_good_2.php
|
|
|
@ -1,12 +0,0 @@
|
||||||
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
|
|
|
@ -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
|
|
|
@ -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_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
|
|
|
@ -1,17 +0,0 @@
|
||||||
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
|
|
|
@ -3,9 +3,9 @@ import public "other.proto";
|
||||||
option java_package = "com.example.foo";
|
option java_package = "com.example.foo";
|
||||||
enum EnumAllowingAlias {
|
enum EnumAllowingAlias {
|
||||||
option allow_alias = true;
|
option allow_alias = true;
|
||||||
ALLOWING_UNSPECIFIED = 0;
|
ENUM_ALLOWING_ALIAS_ALLOWING_UNSPECIFIED = 0;
|
||||||
STARTED = 1;
|
ENUM_ALLOWING_ALIAS_STARTED = 1;
|
||||||
RUNNING = 2 [(custom_option) = "hello world"];
|
ENUM_ALLOWING_ALIAS_RUNNING = 2 [(custom_option) = "hello world"];
|
||||||
}
|
}
|
||||||
message Outer {
|
message Outer {
|
||||||
option (my_option).a = true;
|
option (my_option).a = true;
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 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 28 5] 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 34 30] Found a possible incorrect indentation style. Inserting a new line is recommended.\n[protobuf/protobuf_bad_1.proto 35 32] Found a possible incorrect indentation style. Inserting a new line is recommended.\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 not contain any uppercase letter.\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 - protobuf_good_1.proto
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 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 28 5] 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 34 30] Found a possible incorrect indentation style. Inserting a new line is recommended.\n[protobuf/protobuf_bad_1.proto 35 32] Found a possible incorrect indentation style. Inserting a new line is recommended.\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 not contain any uppercase letter.\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" should have the prefix "ENUM_ALLOWING_ALIAS"\n[protobuf/protobuf_bad_1.proto 20 5] EnumField name "STARTED" should have the prefix "ENUM_ALLOWING_ALIAS"\n[protobuf/protobuf_bad_1.proto 21 5] EnumField name "RUNNING" should have the prefix "ENUM_ALLOWING_ALIAS"\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 - protobuf_good_1.proto
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 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 28 5] 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 34 30] Found a possible incorrect indentation style. Inserting a new line is recommended.\n[protobuf/protobuf_bad_1.proto 35 32] Found a possible incorrect indentation style. Inserting a new line is recommended.\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 - protobuf_good_1.proto
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - python_bad_1.py
|
|
||||||
---
|
|
||||||
message: python_mypy/python_bad_1.py 15 error invalid syntax\nFound 1 error in 1 file (errors prevented further checking)\n
|
|
||||||
...
|
|
||||||
ok 2 - python_good_1.py
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - r_bad_1.r
|
|
||||||
---
|
|
||||||
message: /tmp/lint/.automation/test/r/r_bad_1.r 8 3 style Use <-, not =, for assignment.\nf = function (x,y = 1){}\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 8 14 style Remove spaces before the left parenthesis in a function call.\nf = function (x,y = 1){}\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 8 17 style Commas should always have a space after.\nf = function (x,y = 1){}\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 8 22 style There should be a space between right parenthesis and an opening curly brace.\nf = function (x,y = 1){}\n ^~\n/tmp/lint/.automation/test/r/r_bad_1.r 8 23 style Opening curly braces should never go on their own line and should always be followed by a new line.\nf = function (x,y = 1){}\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 8 24 style Closing curly-braces should always be on their own line, unless it's followed by an else.\nf = function (x,y = 1){}\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 11 3 style Commented code should be removed.\n# some <- commented("out code")\n ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n/tmp/lint/.automation/test/r/r_bad_1.r 21 1 style functions should have cyclomatic complexity of less than 15, this has 22.\nsomeComplicatedFunctionWithALongCameCaseName <- function(x)\n^\n/tmp/lint/.automation/test/r/r_bad_1.r 21 1 style Variable and function names should not be longer than 30 characters.\nsomeComplicatedFunctionWithALongCameCaseName <- function(x)\n^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n/tmp/lint/.automation/test/r/r_bad_1.r 21 1 style Variable and function name style should be snake_case.\nsomeComplicatedFunctionWithALongCameCaseName <- function(x)\n^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n/tmp/lint/.automation/test/r/r_bad_1.r 22 1 style Opening curly braces should never go on their own line and should always be followed by a new line.\n{\n^\n/tmp/lint/.automation/test/r/r_bad_1.r 24 1 style Lines should not be more than 80 characters.\n if (1 > 2 && 2 > 3 && 3 > 4 && 4 > 5 && 5*10 > 6 && x == NA) {TRUE} else {FALSE}\n^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n/tmp/lint/.automation/test/r/r_bad_1.r 24 44 style Put spaces around all infix operators.\n if (1 > 2 && 2 > 3 && 3 > 4 && 4 > 5 && 5*10 > 6 && x == NA) {TRUE} else {FALSE}\n ~^~\n/tmp/lint/.automation/test/r/r_bad_1.r 24 57 warning Use is.na rather than == NA.\n if (1 > 2 && 2 > 3 && 3 > 4 && 4 > 5 && 5*10 > 6 && x == NA) {TRUE} else {FALSE}\n ^~~~~\n/tmp/lint/.automation/test/r/r_bad_1.r 24 64 style Opening curly braces should never go on their own line and should always be followed by a new line.\n if (1 > 2 && 2 > 3 && 3 > 4 && 4 > 5 && 5*10 > 6 && x == NA) {TRUE} else {FALSE}\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 24 69 style Closing curly-braces should always be on their own line, unless it's followed by an else.\n if (1 > 2 && 2 > 3 && 3 > 4 && 4 > 5 && 5*10 > 6 && x == NA) {TRUE} else {FALSE}\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 24 76 style Opening curly braces should never go on their own line and should always be followed by a new line.\n if (1 > 2 && 2 > 3 && 3 > 4 && 4 > 5 && 5*10 > 6 && x == NA) {TRUE} else {FALSE}\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 24 82 style Closing curly-braces should always be on their own line, unless it's followed by an else.\n if (1 > 2 && 2 > 3 && 3 > 4 && 4 > 5 && 5*10 > 6 && x == NA) {TRUE} else {FALSE}\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 31 3 style Do not place spaces around code in parentheses or square brackets.\nx[ 2]\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 32 1 warning Avoid 1 length(...) expressions, use seq_len.\n1 length(x) %>% lapply(function(x) x*2) %>%\n^\n/tmp/lint/.automation/test/r/r_bad_1.r 32 37 style Put spaces around all infix operators.\n1 length(x) %>% lapply(function(x) x*2) %>%\n ~^~\n/tmp/lint/.automation/test/r/r_bad_1.r 32 43 style `%>%` should always have a space before it and a new line after it, unless the full pipeline fits on one line.\n1 length(x) %>% lapply(function(x) x*2) %>%\n ~~^\n/tmp/lint/.automation/test/r/r_bad_1.r 36 9 style Only use double-quotes.\nmessage('single_quotes')\n ^~~~~~~~~~~~~~~\n/tmp/lint/.automation/test/r/r_bad_1.r 40 8 style Put spaces around all infix operators.\ny <- 2 +(1 10)\n ^~\n/tmp/lint/.automation/test/r/r_bad_1.r 40 9 style Place a space before left parenthesis, except in a function call.\ny <- 2 +(1 10)\n ^\n/tmp/lint/.automation/test/r/r_bad_1.r 43 1 style Opening curly braces should never go on their own line and should always be followed by a new line.\n{\n^\n/tmp/lint/.automation/test/r/r_bad_1.r 46 0 error unexpected end of input\n\n\n/tmp/lint/.automation/test/r/r_bad_1.r 46 1 style Trailing blank lines are superfluous.\n\n^\n
|
|
||||||
...
|
|
||||||
ok 2 - r_good_1.r
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 - raku_good_1.raku
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - ruby_bad_1.rb
|
|
||||||
---
|
|
||||||
message: Inspecting 1 file\nC\n\nOffenses \n\nruby/ruby_bad_1.rb 1 1 C [Correctable] Style/FrozenStringLiteralComment Missing frozen string literal comment.\nruby/ruby_bad_1.rb 11 11 C [Correctable] 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 [Correctable] Layout/SpaceInsideParens Space inside parentheses detected.\nFile.open('/tmp/urls.txt', " w" ) do | file|\n ^\nruby/ruby_bad_1.rb 11 39 C [Correctable] 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 [Correctable] Layout/SpaceAroundBlockParameters Space after last block parameter detected.\n Hook.active.map do |h |\n ^\nruby/ruby_bad_1.rb 13 13 C [Correctable] Layout/SpaceInsideArrayLiteralBrackets Do not use space inside array brackets.\n urls = [ ARRAY_OF_URLS_CALLING_INSTANCE]\n ^\n\n1 file inspected,6 offenses detected, 6 offenses auto-correctable\n
|
|
||||||
...
|
|
||||||
ok 2 - ruby_good_1.rb
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - rust_bad_1.rs
|
|
||||||
---
|
|
||||||
message: Diff in /tmp/lint/.automation/test/rust_2015/rust_bad_1.rs at line 1 \n // rustfmt-struct_field_align_threshold 50\n fn func() {\n- Ok(ServerInformation { name unwrap_message_string(items.get(0)),\n- vendor unwrap_message_string(items.get(1)),\n- version unwrap_message_string(items.get(2)),\n- spec_version unwrap_message_string(items.get(3)), });\n+ Ok(ServerInformation {\n+ name unwrap_message_string(items.get(0)),\n+ vendor unwrap_message_string(items.get(1)),\n+ version unwrap_message_string(items.get(2)),\n+ spec_version unwrap_message_string(items.get(3)),\n+ });\n }\n \n
|
|
||||||
...
|
|
||||||
ok 2 - rust_good_1.rs
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - rust_bad_1.rs
|
|
||||||
---
|
|
||||||
message: Diff in /tmp/lint/.automation/test/rust_2018/rust_bad_1.rs at line 1 \n // rustfmt-struct_field_align_threshold 50\n fn func() {\n- Ok(ServerInformation { name unwrap_message_string(items.get(0)),\n- vendor unwrap_message_string(items.get(1)),\n- version unwrap_message_string(items.get(2)),\n- spec_version unwrap_message_string(items.get(3)), });\n+ Ok(ServerInformation {\n+ name unwrap_message_string(items.get(0)),\n+ vendor unwrap_message_string(items.get(1)),\n+ version unwrap_message_string(items.get(2)),\n+ spec_version unwrap_message_string(items.get(3)),\n+ });\n }\n \n
|
|
||||||
...
|
|
||||||
ok 2 - rust_good_1.rs
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - Cargo.toml
|
|
||||||
---
|
|
||||||
message: /tmp/lint/.automation/test/rust_clippy/bad /tmp/lint/.automation/test\n Checking bad v0.1.0 (/tmp/lint/.automation/test/rust_clippy/bad)\nerror approximate value of `f{32, 64} consts PI` found. Consider using it directly\n --> src/main.rs 2 13\n |\n2 | let x = 3.14;\n | ^^^^\n |\n = note `#[deny(clippy approx_constant)]` on by default\n = help for further information visit https //rust-lang.github.io/rust-clippy/master/index.html#approx_constant\n\nerror aborting due to previous error\n\nerror could not compile `bad`\n\nTo learn more, run the command again with --verbose.\n/tmp/lint/.automation/test\n
|
|
||||||
...
|
|
||||||
ok 2 - Cargo.toml
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 - terraform_good_1.tf
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - terraform-terrascan_bad_1.tf
|
|
||||||
---
|
|
||||||
message: results \n violations \n - rule_name instanceWithNoVpc\n description Ensure that your AWS application is not deployed within the default Virtual Private Cloud in order to follow security best practices\n rule_id AC-AW-IS-IN-M-0144\n severity MEDIUM\n category Infrastructure Security\n resource_name instanceWithNoVpc\n resource_type aws_instance\n file terraform-terrascan_bad_1.tf\n line 1\n count \n low 0\n medium 1\n high 0\n total 1\n
|
|
||||||
...
|
|
||||||
ok 2 - terraform-terrascan_good_1.tf
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
not ok 1 - tsx_bad_1.tsx
|
|
||||||
---
|
|
||||||
message: \n/tmp/lint/.automation/test/tsx/tsx_bad_1.tsx\n 1 16 error Parsing error Type expected\n\n 1 problem (1 error, 0 warnings)\n
|
|
||||||
...
|
|
||||||
ok 2 - tsx_good_1.tsx
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 - typescript_good_1.ts
|
|
|
@ -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_standard/typescript_bad_1.ts 5 39 Parsing error Unterminated regular expression literal.\n
|
|
||||||
...
|
|
||||||
ok 2 - typescript_good_1.ts
|
|
|
@ -1,7 +0,0 @@
|
||||||
TAP version 13
|
|
||||||
1..2
|
|
||||||
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 - xml_good_1.xml
|
|
|
@ -1,7 +0,0 @@
|
||||||
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
|
|
|
@ -223,7 +223,7 @@ But if you wish to select or exclude specific linters, we give you full control
|
||||||
| **FILTER_REGEX_EXCLUDE** | `none` | Regular expression defining which files will be excluded from linting (ex: `.*src/test.*`) |
|
| **FILTER_REGEX_EXCLUDE** | `none` | Regular expression defining which files will be excluded from linting (ex: `.*src/test.*`) |
|
||||||
| **FILTER_REGEX_INCLUDE** | `all` | Regular expression defining which files will be processed by linters (ex: `.*src/.*`) |
|
| **FILTER_REGEX_INCLUDE** | `all` | Regular expression defining which files will be processed by linters (ex: `.*src/.*`) |
|
||||||
| **GITHUB_DOMAIN** | `github.com` | Specify a custom Github domain in case Github Enterprise is used: e.g. `github.myenterprise.com` |
|
| **GITHUB_DOMAIN** | `github.com` | Specify a custom Github domain in case Github Enterprise is used: e.g. `github.myenterprise.com` |
|
||||||
| **GITHUB_CUSTOM_API_URL** | `api.github.com` | Specify a custom Github API URL in case Github Enterprise is used: e.g. `https://github.myenterprise.com/api/v3/`|
|
| **GITHUB_CUSTOM_API_URL** | `api.github.com` | Specify a custom Github API URL in case Github Enterprise is used: e.g. `https://github.myenterprise.com/api/v3/` |
|
||||||
| **IGNORE_GITIGNORED_FILES** | `false` | If set to `true`, super-linter will ignore all the files that are ignored by Git. |
|
| **IGNORE_GITIGNORED_FILES** | `false` | If set to `true`, super-linter will ignore all the files that are ignored by Git. |
|
||||||
| **JAVASCRIPT_ES_CONFIG_FILE** | `.eslintrc.yml` | Filename for [eslint configuration](https://eslint.org/docs/user-guide/configuring#configuration-file-formats) (ex: `.eslintrc.yml`, `.eslintrc.json`) |
|
| **JAVASCRIPT_ES_CONFIG_FILE** | `.eslintrc.yml` | Filename for [eslint configuration](https://eslint.org/docs/user-guide/configuring#configuration-file-formats) (ex: `.eslintrc.yml`, `.eslintrc.json`) |
|
||||||
| **JAVASCRIPT_DEFAULT_STYLE** | `standard` | Flag to set the default style of javascript. Available options: **standard**/**prettier** |
|
| **JAVASCRIPT_DEFAULT_STYLE** | `standard` | Flag to set the default style of javascript. Available options: **standard**/**prettier** |
|
||||||
|
@ -234,8 +234,6 @@ But if you wish to select or exclude specific linters, we give you full control
|
||||||
| **MULTI_STATUS** | `true` | A status API is made for each language that is linted to make visual parsing easier. |
|
| **MULTI_STATUS** | `true` | A status API is made for each language that is linted to make visual parsing easier. |
|
||||||
| **MARKDOWN_CONFIG_FILE** | `.markdown-lint.yml` | Filename for [Markdownlint configuration](https://github.com/DavidAnson/markdownlint#optionsconfig) (ex: `.markdown-lint.yml`, `.markdownlint.json`, `.markdownlint.yaml`) |
|
| **MARKDOWN_CONFIG_FILE** | `.markdown-lint.yml` | Filename for [Markdownlint configuration](https://github.com/DavidAnson/markdownlint#optionsconfig) (ex: `.markdown-lint.yml`, `.markdownlint.json`, `.markdownlint.yaml`) |
|
||||||
| **MARKDOWN_CUSTOM_RULE_GLOBS** | `.markdown-lint/rules,rules/**` | Comma-separated list of [file globs](https://github.com/igorshubovych/markdownlint-cli#globbing) matching [custom Markdownlint rule files](https://github.com/DavidAnson/markdownlint/blob/main/doc/CustomRules.md). |
|
| **MARKDOWN_CUSTOM_RULE_GLOBS** | `.markdown-lint/rules,rules/**` | Comma-separated list of [file globs](https://github.com/igorshubovych/markdownlint-cli#globbing) matching [custom Markdownlint rule files](https://github.com/DavidAnson/markdownlint/blob/main/doc/CustomRules.md). |
|
||||||
| **OUTPUT_FORMAT** | `none` | The report format to be generated, besides the stdout one. Output format of tap is currently using v13 of the specification. Supported formats: tap |
|
|
||||||
| **OUTPUT_FOLDER** | `super-linter.report` | The location where the output reporting will be generated to. Output folder must not previously exist. |
|
|
||||||
| **OUTPUT_DETAILS** | `simpler` | What level of details to be reported. Supported formats: simpler or detailed. |
|
| **OUTPUT_DETAILS** | `simpler` | What level of details to be reported. Supported formats: simpler or detailed. |
|
||||||
| **PYTHON_BLACK_CONFIG_FILE** | `.python-black` | Filename for [black configuration](https://github.com/psf/black/blob/master/docs/compatible_configs.md) (ex: `.isort.cfg`, `pyproject.toml`) |
|
| **PYTHON_BLACK_CONFIG_FILE** | `.python-black` | Filename for [black configuration](https://github.com/psf/black/blob/master/docs/compatible_configs.md) (ex: `.isort.cfg`, `pyproject.toml`) |
|
||||||
| **PYTHON_FLAKE8_CONFIG_FILE** | `.flake8` | Filename for [flake8 configuration](https://flake8.pycqa.org/en/latest/user/configuration.html) (ex: `.flake8`, `tox.ini`) |
|
| **PYTHON_FLAKE8_CONFIG_FILE** | `.flake8` | Filename for [flake8 configuration](https://flake8.pycqa.org/en/latest/user/configuration.html) (ex: `.flake8`, `tox.ini`) |
|
||||||
|
|
|
@ -1,143 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
################################################################################
|
|
||||||
################################################################################
|
|
||||||
########### Super-Linter linting Functions @admiralawkbar ######################
|
|
||||||
################################################################################
|
|
||||||
################################################################################
|
|
||||||
########################## FUNCTION CALLS BELOW ################################
|
|
||||||
################################################################################
|
|
||||||
################################################################################
|
|
||||||
#### Function IsTap ############################################################
|
|
||||||
function IsTAP() {
|
|
||||||
if [ "${OUTPUT_FORMAT}" == "tap" ]; then
|
|
||||||
return 0
|
|
||||||
else
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
################################################################################
|
|
||||||
#### Function TransformTAPDetails ##############################################
|
|
||||||
function TransformTAPDetails() {
|
|
||||||
DATA=${1}
|
|
||||||
if [ -n "${DATA}" ] && [ "${OUTPUT_DETAILS}" == "detailed" ]; then
|
|
||||||
############################################################
|
|
||||||
# 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/\([0-9\.]+s\)//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
|
|
||||||
}
|
|
||||||
################################################################################
|
|
||||||
#### Function HeaderTap ########################################################
|
|
||||||
function HeaderTap() {
|
|
||||||
################
|
|
||||||
# Pull in Vars #
|
|
||||||
################
|
|
||||||
INDEX="${1}" # File being validated
|
|
||||||
OUTPUT_FILE="${2}" # Output location
|
|
||||||
|
|
||||||
###################
|
|
||||||
# Print the goods #
|
|
||||||
###################
|
|
||||||
printf "TAP version 13\n1..%s\n" "${INDEX}" >"${OUTPUT_FILE}"
|
|
||||||
}
|
|
||||||
################################################################################
|
|
||||||
#### Function OkTap ############################################################
|
|
||||||
function OkTap() {
|
|
||||||
################
|
|
||||||
# Pull in Vars #
|
|
||||||
################
|
|
||||||
INDEX="${1}" # Location
|
|
||||||
FILE="${2}" # File being validated
|
|
||||||
TEMP_FILE="${3}" # Temp file location
|
|
||||||
|
|
||||||
###################
|
|
||||||
# Print the goods #
|
|
||||||
###################
|
|
||||||
echo "ok ${INDEX} - ${FILE}" >>"${TEMP_FILE}"
|
|
||||||
}
|
|
||||||
################################################################################
|
|
||||||
#### Function NotOkTap #########################################################
|
|
||||||
function NotOkTap() {
|
|
||||||
################
|
|
||||||
# Pull in Vars #
|
|
||||||
################
|
|
||||||
INDEX="${1}" # Location
|
|
||||||
FILE="${2}" # File being validated
|
|
||||||
TEMP_FILE="${3}" # Temp file location
|
|
||||||
|
|
||||||
###################
|
|
||||||
# Print the goods #
|
|
||||||
###################
|
|
||||||
echo "not ok ${INDEX} - ${FILE}" >>"${TEMP_FILE}"
|
|
||||||
}
|
|
||||||
################################################################################
|
|
||||||
#### Function AddDetailedMessageIfEnabled ######################################
|
|
||||||
function AddDetailedMessageIfEnabled() {
|
|
||||||
################
|
|
||||||
# Pull in Vars #
|
|
||||||
################
|
|
||||||
LINT_CMD="${1}" # Linter command
|
|
||||||
TEMP_FILE="${2}" # Temp file
|
|
||||||
|
|
||||||
####################
|
|
||||||
# Check the return #
|
|
||||||
####################
|
|
||||||
DETAILED_MSG=$(TransformTAPDetails "${LINT_CMD}")
|
|
||||||
if [ -n "${DETAILED_MSG}" ]; then
|
|
||||||
printf " ---\n message: %s\n ...\n" "${DETAILED_MSG}" >>"${TEMP_FILE}"
|
|
||||||
|
|
||||||
# Need to update the temp file and remove any non ascii characters
|
|
||||||
cp "${TEMP_FILE}" "${TEMP_FILE}.tmp" && LC_ALL=C tr -dc '\0-\177' <"${TEMP_FILE}.tmp" >"${TEMP_FILE}" && rm "${TEMP_FILE}.tmp"
|
|
||||||
|
|
||||||
# Need to change all multi spaces to single space to prevent spacing inconsistancies
|
|
||||||
sed -i 's/ \{1,\}/ /g' "${TEMP_FILE}"
|
|
||||||
|
|
||||||
# Need to fix the spacing on the file to meet editor config specs
|
|
||||||
sed -i 's/^\ ---/\ \ ---/g' "${TEMP_FILE}"
|
|
||||||
sed -i 's/^\ \.\.\./\ \ \.\.\./g' "${TEMP_FILE}"
|
|
||||||
sed -i 's/^\ message/\ \ message/g' "${TEMP_FILE}"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
################################################################################
|
|
||||||
#### Function Reports ##########################################################
|
|
||||||
Reports() {
|
|
||||||
info "----------------------------------------------"
|
|
||||||
info "----------------------------------------------"
|
|
||||||
info "Generated reports:"
|
|
||||||
info "----------------------------------------------"
|
|
||||||
info "----------------------------------------------"
|
|
||||||
|
|
||||||
###################################
|
|
||||||
# Prints output report if enabled #
|
|
||||||
###################################
|
|
||||||
if [ -z "${FORMAT_REPORT}" ]; then
|
|
||||||
info "Reports generated in folder ${REPORT_OUTPUT_FOLDER}"
|
|
||||||
#############################################
|
|
||||||
# Print info on reports that were generated #
|
|
||||||
#############################################
|
|
||||||
if [ -d "${REPORT_OUTPUT_FOLDER}" ]; then
|
|
||||||
info "Contents of report folder:"
|
|
||||||
OUTPUT_CONTENTS_CMD=$(ls "${REPORT_OUTPUT_FOLDER}")
|
|
||||||
info "$OUTPUT_CONTENTS_CMD"
|
|
||||||
else
|
|
||||||
warn "Report output folder (${REPORT_OUTPUT_FOLDER}) does NOT exist."
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
################################################################################
|
|
|
@ -51,15 +51,6 @@ function LintCodebase() {
|
||||||
# Check if any data was found #
|
# Check if any data was found #
|
||||||
###############################
|
###############################
|
||||||
if [ ${SKIP_FLAG} -eq 0 ]; then
|
if [ ${SKIP_FLAG} -eq 0 ]; then
|
||||||
########################################
|
|
||||||
# Prepare context if TAP format output #
|
|
||||||
########################################
|
|
||||||
if IsTAP; then
|
|
||||||
TMPFILE=$(mktemp -q "/tmp/super-linter-${FILE_TYPE}.XXXXXX")
|
|
||||||
mkdir -p "${REPORT_OUTPUT_FOLDER}"
|
|
||||||
REPORT_OUTPUT_FILE="${REPORT_OUTPUT_FOLDER}/super-linter-${FILE_TYPE}.${OUTPUT_FORMAT}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
WORKSPACE_PATH="${GITHUB_WORKSPACE}"
|
WORKSPACE_PATH="${GITHUB_WORKSPACE}"
|
||||||
if [ "${TEST_CASE_RUN}" == "true" ]; then
|
if [ "${TEST_CASE_RUN}" == "true" ]; then
|
||||||
WORKSPACE_PATH="${GITHUB_WORKSPACE}/${TEST_CASE_FOLDER}"
|
WORKSPACE_PATH="${GITHUB_WORKSPACE}/${TEST_CASE_FOLDER}"
|
||||||
|
@ -295,26 +286,11 @@ function LintCodebase() {
|
||||||
# Increment the error count
|
# Increment the error count
|
||||||
(("ERRORS_FOUND_${FILE_TYPE}++"))
|
(("ERRORS_FOUND_${FILE_TYPE}++"))
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#######################################################
|
|
||||||
# Store the linting as a temporary file in TAP format #
|
|
||||||
#######################################################
|
|
||||||
if IsTAP; then
|
|
||||||
NotOkTap "${INDEX}" "${FILE_NAME}" "${TMPFILE}"
|
|
||||||
AddDetailedMessageIfEnabled "${LINT_CMD}" "${TMPFILE}"
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
###########
|
###########
|
||||||
# Success #
|
# Success #
|
||||||
###########
|
###########
|
||||||
info " - File:${F[W]}[${FILE_NAME}]${F[B]} was linted with ${F[W]}[${LINTER_NAME}]${F[B]} successfully"
|
info " - File:${F[W]}[${FILE_NAME}]${F[B]} was linted with ${F[W]}[${LINTER_NAME}]${F[B]} successfully"
|
||||||
|
|
||||||
#######################################################
|
|
||||||
# Store the linting as a temporary file in TAP format #
|
|
||||||
#######################################################
|
|
||||||
if IsTAP; then
|
|
||||||
OkTap "${INDEX}" "${FILE_NAME}" "${TMPFILE}"
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
#######################################
|
#######################################
|
||||||
|
@ -338,75 +314,9 @@ function LintCodebase() {
|
||||||
###########
|
###########
|
||||||
info " - File:${F[W]}[${FILE_NAME}]${F[B]} failed test case (Error code: ${ERROR_CODE}) with ${F[W]}[${LINTER_NAME}]${F[B]} successfully"
|
info " - File:${F[W]}[${FILE_NAME}]${F[B]} failed test case (Error code: ${ERROR_CODE}) with ${F[W]}[${LINTER_NAME}]${F[B]} successfully"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#######################################################
|
|
||||||
# Store the linting as a temporary file in TAP format #
|
|
||||||
#######################################################
|
|
||||||
if IsTAP; then
|
|
||||||
NotOkTap "${INDEX}" "${FILE_NAME}" "${TMPFILE}"
|
|
||||||
AddDetailedMessageIfEnabled "${LINT_CMD}" "${TMPFILE}"
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
debug "Error code: ${ERROR_CODE}. Command output:${NC}\n------\n${LINT_CMD}\n------"
|
debug "Error code: ${ERROR_CODE}. Command output:${NC}\n------\n${LINT_CMD}\n------"
|
||||||
done
|
done
|
||||||
|
|
||||||
#################################
|
|
||||||
# Generate report in TAP format #
|
|
||||||
#################################
|
|
||||||
if IsTAP && [ ${INDEX} -gt 0 ]; then
|
|
||||||
HeaderTap "${INDEX}" "${REPORT_OUTPUT_FILE}"
|
|
||||||
cat "${TMPFILE}" >>"${REPORT_OUTPUT_FILE}"
|
|
||||||
|
|
||||||
if [ "${TEST_CASE_RUN}" = "true" ]; then
|
|
||||||
########################################################################
|
|
||||||
# If expected TAP report exists then compare with the generated report #
|
|
||||||
########################################################################
|
|
||||||
TAP_SUCCESS=0
|
|
||||||
TAP_ERROR_ARRAY=()
|
|
||||||
mapfile -t EXPECTED_FILES_ARRAY < <(
|
|
||||||
cd "${WORKSPACE_PATH}/${INDIVIDUAL_TEST_FOLDER}/reports" || exit 1
|
|
||||||
find . -name '*.tap' 2>&1
|
|
||||||
)
|
|
||||||
for EXPECTED_FILE in "${EXPECTED_FILES_ARRAY[@]}"; do
|
|
||||||
# Remove the pathing to file name
|
|
||||||
EXPECTED_FILE_NAME="${EXPECTED_FILE:2}"
|
|
||||||
# Create full path
|
|
||||||
EXPECTED_FILE="${WORKSPACE_PATH}/${INDIVIDUAL_TEST_FOLDER}/reports/${EXPECTED_FILE_NAME}"
|
|
||||||
|
|
||||||
# Check that file exists
|
|
||||||
if [ -e "${EXPECTED_FILE}" ]; then
|
|
||||||
TMPFILE=$(mktemp -q "/tmp/diff-${FILE_TYPE}.XXXXXX")
|
|
||||||
## Ignore white spaces, case sensitive
|
|
||||||
if ! diff -a -w -i "${EXPECTED_FILE}" "${REPORT_OUTPUT_FILE}" >"${TMPFILE}" 2>&1; then
|
|
||||||
#############################################
|
|
||||||
# We failed to compare the reporting output #
|
|
||||||
#############################################
|
|
||||||
warn "Tap File difference:"
|
|
||||||
cat "${TMPFILE}"
|
|
||||||
STRING=$(cat "${TMPFILE}")
|
|
||||||
TAP_ERROR_ARRAY+=("${STRING}")
|
|
||||||
TAP_ERROR_ARRAY+=("Failed to assert TAP output for ${LINTER_NAME} linter")
|
|
||||||
else
|
|
||||||
info "TAP output validated successfully for ${LINTER_NAME}"
|
|
||||||
# Set flag for success
|
|
||||||
TAP_SUCCESS=1
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
fatal "No TAP expected file found at:[${EXPECTED_FILE}]"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# Need to check if the TAP_SUCCESS was set to 1
|
|
||||||
if [ "${TAP_SUCCESS}" -ne 1 ]; then
|
|
||||||
# We failed on all tap outputs
|
|
||||||
error "Failed to assert TAP output!"
|
|
||||||
for LINE in "${TAP_ERROR_ARRAY[@]}"; do
|
|
||||||
error "${LINE}"
|
|
||||||
done
|
|
||||||
fatal "Failed to assert TAP output!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
##############################
|
##############################
|
||||||
|
|
|
@ -923,11 +923,6 @@ for LANGUAGE in "${LANGUAGE_ARRAY[@]}"; do
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
###########
|
|
||||||
# Reports #
|
|
||||||
###########
|
|
||||||
Reports
|
|
||||||
|
|
||||||
##########
|
##########
|
||||||
# Footer #
|
# Footer #
|
||||||
##########
|
##########
|
||||||
|
|
Loading…
Reference in a new issue