lib/rest-graph/test_util.rb in rest-graph-1.7.0 vs lib/rest-graph/test_util.rb in rest-graph-1.8.0

- old
+ new

@@ -1,9 +1,11 @@ -require 'rest-graph' +require 'rest-graph/core' require 'rr' +require 'uri' + module RestGraph::TestUtil extend RR::Adapters::RRMethods Methods = [:get, :delete, :post, :put] @@ -12,10 +14,24 @@ any_instance_of(RestGraph){ |rg| stub(rg).data{default_data} stub(rg).fetch{ |meth, uri, payload| history << [meth, uri, payload] - RestGraph.json_encode(default_response) + http = 'https?://[\w\d]+(\.[\w\d]+)+/' + response = case uri + when %r{#{http}method/fql.multiquery} + RestGraph.json_decode( + Rack::Utils.parse_query( + URI.parse(uri).query)['queries']).keys.map{ |q| + {'name' => q, + 'fql_result_set' => [default_response]} + } + when %r{#{http}method/\w+\.\w+} + [default_response] + else + default_response + end + RestGraph.json_encode(response) } } self end alias_method :before, :setup