Sha256: c7d58a695eaf5d12c94cd1f356ea902707f4f5d2154cd14eba3798ad03fbc175
Contents?: true
Size: 1.36 KB
Versions: 17
Compression:
Stored size: 1.36 KB
Contents
require 'rest-core/test' describe RC::JsonRequest do app = RC::JsonRequest.new(RC::Dry.new, true) env = {RC::REQUEST_HEADERS => {}, RC::REQUEST_METHOD => :post} request_params = { 'key' => 'value', 'array' => [1, 2, 3], 'nested' => {'k' => 'v', 'a' => [4, 5, 6]} } would 'encode payload as json' do e = env.merge(RC::REQUEST_METHOD => :post, RC::REQUEST_PAYLOAD => request_params) app.call(e){ |res| res.should.eq( RC::REQUEST_METHOD => :post, RC::REQUEST_HEADERS => {'Content-Type' => 'application/json'}, RC::REQUEST_PAYLOAD => RC::Json.encode(request_params))} end would 'encode false and nil' do [[nil, 'null'], [false, 'false'], [true, 'true']].each do |(value, exp)| [:post, :put, :patch].each do |meth| e = env.merge(RC::REQUEST_METHOD => meth, RC::REQUEST_PAYLOAD => value) app.call(e){ |res| res[RC::REQUEST_PAYLOAD].should.eq(exp) } end end end would 'do nothing for get, delete, head, options' do [:get, :delete, :head, :options].each do |meth| e = env.merge(RC::REQUEST_PAYLOAD => {}, RC::REQUEST_METHOD => meth) app.call(e){ |res| res.should.eq e } end end would 'do nothing if json_request is false' do a = RC::JsonRequest.new(RC::Dry.new, false) a.call(env){ |res| res.should.eq env } end end
Version data entries
17 entries across 17 versions & 1 rubygems