{"id":23328946,"url":"https://github.com/nidi3/raml-tester-proxy","last_synced_at":"2025-08-22T22:33:31.178Z","repository":{"id":17217275,"uuid":"19985998","full_name":"nidi3/raml-tester-proxy","owner":"nidi3","description":"Test if requests/responses are raml compliant as a standalone proxy","archived":false,"fork":false,"pushed_at":"2017-06-02T13:35:05.000Z","size":316,"stargazers_count":13,"open_issues_count":5,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-30T03:37:47.329Z","etag":null,"topics":["javascript","proxy","raml","testing"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nidi3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-05-20T15:16:26.000Z","updated_at":"2022-03-22T09:06:22.000Z","dependencies_parsed_at":"2022-09-11T05:04:27.408Z","dependency_job_id":null,"html_url":"https://github.com/nidi3/raml-tester-proxy","commit_stats":null,"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nidi3%2Framl-tester-proxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nidi3%2Framl-tester-proxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nidi3%2Framl-tester-proxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nidi3%2Framl-tester-proxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nidi3","download_url":"https://codeload.github.com/nidi3/raml-tester-proxy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230647178,"owners_count":18258832,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["javascript","proxy","raml","testing"],"created_at":"2024-12-20T21:29:43.702Z","updated_at":"2024-12-20T21:29:44.257Z","avatar_url":"https://github.com/nidi3.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"raml-tester-proxy [![Build Status](https://travis-ci.org/nidi3/raml-tester-proxy.svg?branch=master)](https://travis-ci.org/nidi3/raml-tester-proxy)\n=================\nA standalone proxy/mock that tests if requests/responses are compliant with a given RAML.\n\nTo see all options, execute\n\n```\njava -jar raml-tester-standalone.jar\n```\n\n##Usage as proxy\nExample: If there is a service running at localhost:8080, start the proxy with\n\n```\njava -jar raml-tester-standalone.jar -t localhost:8080 -r \u003craml-file\u003e -s.\n```\n\nand access the service using localhost:8099.\n\nEvery request or response that does not match the RAML definition will be logged.\n\n##Run asynchronously\nIf the proxy is started with the -a flag, it runs asynchronously.\nYou can send commands to it the following way:\n\n```\njava -jar raml-tester-standalone.jar \u003ccommand\u003e\n```\n\nThese commands are supported:\n\n- ping: Ping the proxy\n- stop: Stop the proxy\n- reload: Reload the RAML file\n- validate: Validate the RAML file\n- reports: Get the reports of the RAML violations\n- usage: Get information about usage of RAML elements\n\nSee also [the RAML definition](raml-tester-client/src/main/resources/proxy.raml).\n\n##Usage as Mock\nInstead of forwarding all requests to another server, the tool can also be used to return mock responses.\n(Which will also be verified against a RAML file.)\nUse the -m option instead of -t to run in mock mode:\n\n```\njava -jar raml-tester-standalone.jar -m mock-data -r \u003craml-file\u003e -s.\n```\n\nThe files in directory `mock-data` will be used as responses.\n\n- A request to `localhost:8099/admin/user/` will be responded with any of the files `mock-data/admin/user.{json|xml|txt}`,\nif one exists.\n- Responses can be specialized by prepending the HTTP method:\nA GET request will first search for `mock-data/admin/GET-user.json` and then for the general `mock-data/admin/user.json`.\n- If a file named `mock-data/admin/META-user.json` exists, it is used to define response code and reponse headers.\nAn example file looks like `{ \"code\": 202, \"headers\": {\"X-meta\": \"get!\"} }`.\n- If no matching file for a request is found, `RESPONSE.json` is searched up the directory structure and used if found.\n`mock-data/RESPONSE.json` would be used whenever no exact matching file is found. The same is true for `META-` files.\n\n##Usage from Javascript\nThere is a special support for usage from javascript.\n\nSee [raml-tester-js](raml-tester-js/README.md) for details and\n[raml-tester-uc-js](https://github.com/nidi3/raml-tester-uc-js) for examples.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnidi3%2Framl-tester-proxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnidi3%2Framl-tester-proxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnidi3%2Framl-tester-proxy/lists"}