Skip to content

Prototyping a Quality Assessment Tool with Parameterized Quality Models

License

Notifications You must be signed in to change notification settings

parameterIT/tool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Quality Tool

Setup

Make sure you have Poetry >= 1.2.0 installed. You can then get started by running:

poetry install

Code duplication - cpd

As of this moment, we are using copy paste detector to find duplicate code. This requires you to download cpd and place the bin/ and lib/ folder (and their files) in a cpd subfolder in metrics (metrics/cpd/<cpd folders goes here>).

You can download cpd from the following link (check if there is a newer release): https://github.com/pmd/pmd/releases/tag/pmd_releases/6.54.0

Running, Testing, and Formatting

This is all done using poetry. To run:

poetry run modu <path/to/source/code> <Quality_model>

e.g.

poetry run modu . code_climate

To see supported languages please refer to: byoqm/source_coordinator/languages.py

Optional values can be gotten by running:

poetry run modu --help

To test:

poetry run test

To format:

poetry run black .

Building Tree Sitter Grammars

Make sure you have a build/ and grammars/ folders in the root of the project:

mkdir build grammars

Clone the python grammar into grammars/:

cd grammars && git clone --depth 1 https://github.com/tree-sitter/tree-sitter-python && git clone --depth 1 https://github.com/tree-sitter/tree-sitter-c-sharp && git clone --depth 1 https://github.com/tree-sitter/tree-sitter-java && cd -

Build the grammar file:

poetry run python modu/build_treesitter.py

About

Prototyping a Quality Assessment Tool with Parameterized Quality Models

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •