Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@sap/di.code-validation.core

Package Overview
Dependencies
Maintainers
3
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@sap/di.code-validation.core

Code validation

  • 1.0.1
  • npm
  • Socket score

Version published
Weekly downloads
34K
decreased by-2.92%
Maintainers
3
Weekly downloads
 
Created
Source

Build Status

di.code-validation.core

code validation controller for DI. returning issues in code according to validators configured

install

npm install di.code-validation.core --save-dev

CodeValidation API

executeForProject(projectPath, workspaceRootName, configuration, callbackFunction)

basePath - full path for the validated folder location

options - an object to set additional options for execution and return values processing.

options.pathPrefix - validation issues paths are relative to the project path. _pathPrefix enable to set constant prefix to the returned path.

configuration - configuration of the validators to execute. object of type ValidationConfig

callbackFunction - callback of results. (TBD: add also failure for callback?)

ValidationConfig structure:

  {
      "validators" : {
          "validator1" : {
              "extensions" : ['.js', '.xsjs'],
              "filters": {
                  "levels" :["error", "warning", "info"]
              }
          },
          "validator2" : {
              "extensions" : ['.new'],
              "filters": {
                  "levels" :["error"]
              }
          }
          ....
      }
  }

result structure:

{
    "validator_id" : {
        "issues" : {
            "relative_file_path" : [
                {
                    "category" : "Possible Error",
                    "checker" : "validator checker name",
                    "column" : 1,
                    "line" : 14,
                    "message" : "some message",
                    "path" : "relative_file_path",
                    "ruleId" : "optional name of rule",
                    "severity" : "error"
                }
                ....
            ]
        }
        ....
    }
}
validator API

Each validator should implement following API:

  validateFiles(validationMetadata, fileResources)

validationMetadata - contains following methods:

  getRootPath() - workspaceRootName

  getLevels() - array of levels of issues to return

fileResources - array of files to validate (TBD: enable validation by extension of regular expression)

  getPath() - returns the file full path
  
  getText() - returns the text in the file
run validation from command line

node di.code-validation.core\bin\run.js "project file location" "client workspace root path"

--c "configuration file location" - file with validation configuration. if not supplied defaults used.

Example for configuration file:

  var configParam = { 
    "validators" : { 
      "di.code-validation.js" : { 
          "extensions" : [".js", ".xsjs"], 
          "filters": { 
            "levels" :["error", "warning", "info"] 
            } 
          } 
        } 
      };
  module.exports =  configParam;

--l "log file" - location of the outpul log file. default is the execution directory

default configuration:

  validators: {
    "di.code-validation.js": {
      extensions: [".js", ".xsjs"]
    },
    "di.code-validation.xml": {
      extensions: [ ".xml"]
    }
  }

FAQs

Package last updated on 11 Jun 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc