X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;ds=sidebyside;f=spec%2Funit%2Frpc%2Frequest_spec.rb;fp=spec%2Funit%2Frpc%2Frequest_spec.rb;h=0000000000000000000000000000000000000000;hb=d1f1649ba43c5cbc43c4beb2380096ba051d646a;hp=a121abae3a7daf19ce3527995b353b9a8fd998d8;hpb=8a3fe7daeecccf43dd71c59371c5005400d35101;p=packages%2Fprecise%2Fmcollective.git diff --git a/spec/unit/rpc/request_spec.rb b/spec/unit/rpc/request_spec.rb deleted file mode 100755 index a121aba..0000000 --- a/spec/unit/rpc/request_spec.rb +++ /dev/null @@ -1,136 +0,0 @@ -#!/usr/bin/env rspec - -require 'spec_helper' - -module MCollective - module RPC - describe Request do - before(:each) do - @req = {:msgtime => Time.now, - :senderid => "spec test", - :requestid => "12345", - :callerid => "rip"} - - @req[:body] = {:action => "test", - :data => {:foo => "bar", :process_results => true}, - :agent => "tester"} - - @ddl = DDL.new("rspec", :agent, false) - - @request = Request.new(@req, @ddl) - end - - describe "#validate!" do - it "should validate the request using the supplied DDL" do - @ddl.expects(:validate_rpc_request).with("test", {:foo => "bar", :process_results => true}) - @request.validate! - end - end - - describe "#initialize" do - it "should set time" do - @request.time.should == @req[:msgtime] - end - - it "should set action" do - @request.action.should == "test" - end - - it "should set data" do - @request.data.should == {:foo => "bar", :process_results => true} - end - - it "should set sender" do - @request.sender.should == "spec test" - end - - it "should set agent" do - @request.agent.should == "tester" - end - - it "should set uniqid" do - @request.uniqid.should == "12345" - end - - it "should set caller" do - @request.caller.should == "rip" - end - - it "should set unknown caller if none is supplied" do - @req.delete(:callerid) - Request.new(@req, @ddl).caller.should == "unknown" - end - end - - describe "#include?" do - it "should correctly report on hash contents" do - @request.include?(:foo).should == true - end - - it "should return false for non hash data" do - @req[:body][:data] = "foo" - Request.new(@req, @ddl).include?(:foo).should == false - end - end - - describe "#should_respond?" do - it "should return true if the header is absent" do - @req[:body][:data].delete(:process_results) - Request.new(@req, @ddl).should_respond?.should == true - end - - it "should return correct value" do - @req[:body][:data][:process_results] = false - Request.new(@req, @ddl).should_respond?.should == false - end - end - - describe "#[]" do - it "should return nil for non hash data" do - @req[:body][:data] = "foo" - Request.new(@req, @ddl)["foo"].should == nil - end - - it "should return correct data" do - @request[:foo].should == "bar" - end - - it "should return nil for absent data" do - @request[:bar].should == nil - end - end - - describe "#fetch" do - it "should return nil for non hash data" do - @req[:body][:data] = "foo" - Request.new(@req, @ddl)["foo"].should == nil - end - - it "should fetch data with the correct default behavior" do - @request.fetch(:foo, "default").should == "bar" - @request.fetch(:rspec, "default").should == "default" - end - end - - describe "#to_hash" do - it "should have the correct keys" do - @request.to_hash.keys.sort.should == [:action, :agent, :data] - end - - it "should return the correct agent" do - @request.to_hash[:agent].should == "tester" - end - - it "should return the correct action" do - @request.to_hash[:action].should == "test" - end - - it "should return the correct data" do - @request.to_hash[:data].should == {:foo => "bar", - :process_results => true} - end - end - end - end -end -