spec/integration/single_graph_spec.rb in render-0.0.2 vs spec/integration/single_graph_spec.rb in render-0.0.3

- old
+ new

@@ -1,14 +1,14 @@ require "render" describe Render do before(:all) do - Render.load_schemas!(Helpers::SCHEMA_DIRECTORY) + Render.load_definitions!(Helpers::SCHEMA_DIRECTORY) end after(:all) do - Render.schemas = {} + Render.definitions = {} end before(:each) do @film_id = UUID.generate @film_name = "The Life Aqautic with Steve Zissou" @@ -22,45 +22,46 @@ describe "requests" do it "returns structured data" do aquatic_uri = @films_endpoint.gsub(":secret_code", "secret_code=#{@secret_code}") stub_request(:get, aquatic_uri).to_return({ body: [{ id: @film_id }].to_json }) - graph = Render::Graph.new(:films, { endpoint: @films_endpoint, secret_code: @secret_code }) - graph.render.should == { films: [{ id: @film_id }] } + graph = Render::Graph.new(:films_index, { endpoint: @films_endpoint, secret_code: @secret_code }) + graph.render.should == { films_index: { films: [{ id: @film_id }] } } end it "returns structured data for specific resources" do id = UUID.generate aquatic_uri = @film_endpoint.gsub(":id", id).gsub(":secret_code", "secret_code=#{@secret_code}") stub_request(:get, aquatic_uri).to_return({ body: { name: @film_name }.to_json }) - graph = Render::Graph.new(:film, { id: id, endpoint: @film_endpoint, secret_code: @secret_code }) - graph.render.should == { film: { name: @film_name, year: nil } } + graph = Render::Graph.new(:films_show, { id: id, endpoint: @film_endpoint, secret_code: @secret_code }) + graph.render.should == { films_show: { film: { name: @film_name, year: nil } } } end end describe "stubbed responses" do before(:each) do Render.stub({ live: false }) end it "use meaningful values" do - response = Render::Graph.new(:film).render({ name: @film_name }) + response = Render::Graph.new(:films_show).render({ name: @film_name }) stub_request(:post, "http://films.local/create").to_return({ body: response.to_json }) - response = post_film(:anything)["film"] + response = post_film(:anything)["films_show"]["film"] response["name"].should be_a(String) response["year"].should be_a(Integer) end it "allows users to specify specific values" do - response = Render::Graph.new(:film).render({ name: @film_name }) + response = Render::Schema.new(:films_show).render!({ name: @film_name }) data = { name: @film_name }.to_json - stub_request(:post, "http://films.local/create").with({ body: data }).to_return({ body: response.to_json }) - response = post_film(data)["film"] + request = stub_request(:post, "http://films.local/create").with({ body: data }).to_return({ body: response.to_json }) + response = post_film(data)["films_show"]["film"] + request.should have_been_made response["name"].should == @film_name end end def post_film(data)