Code autoformatter for Robot Framework
Project description
Robotidy
Introduction
Robotidy is spiritual descendant of Robot Framework’s robot.tidy package. Its main purpose is to format Robot Framework code according to agreed code standards. You can run Robotidy without configuring anything but you can also change how it behaves through CLI or configuration file.
Requirements
Python 3.7+ and Robot Framework 4.0.0+.
Installation
You can install Robotidy by running:
pip install robotframework-tidy
Usage
When called without any arguments, robotidy will not do anything. It requires at least one argument: source to file/directory with robot files:
robotidy tests robotidy test.robot robotidy tests/resources test.robot
Executing selected transformers
You can run robotidy with selected transformers. Use --transform argument for this:
robotidy --transform ReplaceRunKeywordIf src
Some transformers provide configurable parameters. You can pass your own values using –config/-c TRANSFORMER_NAME:param=value syntax:
robotidy --configure DiscardEmptySections:allow_only_comments=True src
It is also possible to supply parameters using --transform option. The main difference is that --transform works like include option in Robot Framework while --configure allows you to configure selected transformers and still run all of them:
robotidy --transform DiscardEmptySections:allow_only_comments=True src
It is possible to develop your own transformers. You can use module name (if it is installed in your env) or path to file with class:
robotidy --transform MyTransformers.YourCustomTransformer --transform C:\transformers\YourCustomTransformer2.py src
Command line options
You can list available options by running robotidy --help
Configuration file
- Robotidy can read configuration from files with toml type. Options are loaded in following order:
auto-discovered configuration file (robotidy.toml or pyproject.toml inside [tool.robotidy] section)
configuration file passed with --config
command line arguments
By default if --config argument is not used, robotidy look for configuration file in common directories for passed sources and execution directory.
It is possible to mix configuration between config file and command line, but if the same parameters are used command line parameter value will be used instead (reference to loading order). It’s important because you cannot specify some of the transformers in config file and come in CLI - you need to list all required transformers in one place.
Example configuration file:
overwrite = false diff = false spacecount = 4 transform = [ "DiscardEmptySections:allow_only_comments=True", "ReplaceRunKeywordIf" ] configure = [ "DiscardEmptySections:allow_only_comments=False" ]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for robotframework-tidy-1.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | e2758446198072532974d0a6a74896a1b94804d17fdb8c9cba75fc5aab2bfb7e |
|
MD5 | 529da0bccb03a4ea731c0956885e8113 |
|
BLAKE2b-256 | 654f62ddaf4df082e82809aa2318ccfb6245fb346cfc9ad05ff84bd70f9e5dd8 |
Hashes for robotframework_tidy-1.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d365ccd912fbd50b16d9337822f7a4f0b843bc4e2d10acf193cc9814f4e9b40f |
|
MD5 | f101526c176138aabf9baf1e957785a6 |
|
BLAKE2b-256 | 42efc0b4d0f6858b099c3d518523821df0acb25aacca3784814c1da7450746c7 |