Skip to content

Andry75/swgr2rb

Repository files navigation

Swgr2rb

Swgr2rb (Swagger to Ruby) is a tool that generates Ruby classes for JSON schema validation based on Swagger-generated documentation. The tool was developed by Polytech Software.

Installation

Swgr2rb can be installed with RubyGems:

$ gem install swgr2rb

Usage

Swgr2rb can be used in two ways: to generate a new testing framework, or to update an existing one.

In both cases, swgr2rb has one required argument and a number of options. The required argument must be either a URL of Swagger (e.g. localhost:8080/swagger) or a path to the JSON file returned by Swagger (e.g. docs/swagger.json). To read more about the options, view help:

$ swgr2rb --help

Generating a new testing framework

Swgr2rb can generate a scaffold of a testing framework:

$ swgr2rb <swagger_url|json_file_path> --from-scratch

A directory named harness will be created, and the scaffold will be generated inside.

The endpoint object models generated from Swagger will be located in the endpoint_object_models/object_model/%component_name% folder (component's name can be specified with the -c/--component option).

More about the generated testing framework's structure can be read in its README file.

Updating an existing testing framework

Swgr2rb can be used to update the endpoint object models of an existing testing framework:

$ swgr2rb <swagger_url|json_file_path> -c <component_name>

The tool will update the endpoint object model schema modules (located in %target_dir%/%component_name%/object_model_schemas) according to Swagger, and create new object model classes and schemas if there are new (previously untested) endpoints in the documentation.

The behavior can be modified with the following command line options (check swgr2rb --help to read more):

Option Description Default value
-t/--target-dir TARGET_DIR The target directory for endpoint object models. endpoint_object_models/object_model
-c/--component COMPONENT The name of the component. component1
--[no-]update-only Do not create new files (endpoint models and schemas), only update the existing ones. false
--[no-]rewrite-schemas Rewrite schema modules if they already exist. true

License

Swgr2rb is released under the MIT license.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published