Project

minimo

0.0
No commit activity in last 3 years
No release in over 3 years
minimo is the server to mock a minimum of http response using the rack.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

~> 1.12
>= 0
~> 10.0
>= 0

Runtime

>= 0
 Project Readme

minimo

Gem Version Build Status Code Climate

Mini Mock server Rack based REST corresponding server

Install

gem install minimo

Usage

It is placed in the directory you specify a response file. For example, in the case of the json response to the POST method. To place the json file in response/POST/hello/world.json.

$ mkdir -p response/POST/hello
$ cd response/POST/hello
$ vi world.json

{
    "hello": "world"
}

To start the minimo server.

# initialize.rb
require 'minimo'

# set response file dir
set :fixture_path, File.dirname( __FILE__ ) + '/response'

# set log file dir
set :log_dir, File.dirname( __FILE__ ) + '/log'

# set http header
set :headers, { 'Vary' => 'Accept-Encoding' }

Rack::Handler::WEBrick.run minimo::Application, Host: '0.0.0.0', Port: 9292

And run the POST method.

$ curl -X POST http://localhost:9292/hello/world/ -d "{ hey: 'ok' }"
{
    "hello": "world"
}

You can check the log file

$ cat log/minimo.log

- -> /hello/world/
::1 - - [14/Jul/2016:21:45:17 JST] "POST /hello/world/ HTTP/1.1" 201 16

Other

The response can be created json, xml, in the text. In addition to the POST, HEAD, PUT, corresponds to DELETE.

# To place the response file in response/GET/hello/world.(txt|jso|xml)
# http status 200
$ curl -X GET http://localhost:9292/hello/world/

# To place the response file in response/HEAD/hello/world.(txt|jso|xml)
# http status 200
$ curl -I http://localhost:9292/hello/world/

# To place the response file in response/PUT/hello/world.(txt|jso|xml)
# http status 204
$ curl -X PUT http://localhost:9292/hello/world/

# To place the response file in response/DELETE/hello/world.(txt|jso|xml)
# http status 204
$ curl -X DELETE http://localhost:9292/hello/world/

Contributing

Contributions to this gem are always welcome 😄 See CONTRIBUTING for more information on how to get started.

License

This project is licensed under the terms of the MIT license. See the LICENSE file.