Sha256: 093c47ce9750c9cc845e16c15e8bab0970e020d37fb919d109aec854a28aa3f9
Contents?: true
Size: 1.9 KB
Versions: 9
Compression:
Stored size: 1.9 KB
Contents
require "spec_helper" describe Apipie::MethodDescription do let(:dsl_data) { ActionController::Base.send(:_apipie_dsl_data_init) } describe "metadata" do before(:each) do @resource = Apipie::ResourceDescription.new(ApplicationController, "dummy") end it "should return nil when no metadata is provided" do method = Apipie::MethodDescription.new(:a, @resource, dsl_data) method.to_json[:metadata].should == nil end it "should return the metadata" do meta = { :lenght => 32, :weight => '830g' } method = Apipie::MethodDescription.new(:a, @resource, dsl_data.update(:meta => meta)) method.to_json[:metadata].should == meta end end describe "deprecated flag" do before(:each) do @resource = Apipie::ResourceDescription.new(ApplicationController, "dummy") end it "should return the deprecated flag when provided" do dsl_data[:api_args] = [[:GET, "/foo/bar", "description", {:deprecated => true}]] method = Apipie::MethodDescription.new(:a, @resource, dsl_data) method.method_apis_to_json.first[:deprecated].should == true end end describe "params descriptions" do before(:each) do @resource = Apipie::ResourceDescription.new(ApplicationController, "dummy") dsl_data[:params] = [[:a, String, nil, {}, nil], [:b, String, nil, {}, nil], [:c, String, nil, {}, nil]] @method = Apipie::MethodDescription.new(:a, @resource, dsl_data) @resource.add_method_description @method end it "should be ordered" do @method.params.keys.should == [:a, :b, :c] @method.to_json[:params].map{|h| h[:name]}.should == ['a', 'b', 'c'] end it "should be still ordered" do @method.params.keys.should == [:a, :b, :c] @method.to_json[:params].map{|h| h[:name]}.should == ['a', 'b', 'c'] end end end
Version data entries
9 entries across 9 versions & 1 rubygems