X-Git-Url: https://git.njae.me.uk/?a=blobdiff_plain;f=spec%2Fgraph%2Fedge_spec.rb;fp=spec%2Fgraph%2Fedge_spec.rb;h=938890fcb251f1e333a5305968fd2d2f391d2df6;hb=282a96d68535bd39b4dcd08ff805ccfcfd8b9f10;hp=bd823bfd919ab882fed7d7267710413018b648e6;hpb=99e4223d9b3baef392d4a6b0b996078f06fcadf7;p=graph.njae.git diff --git a/spec/graph/edge_spec.rb b/spec/graph/edge_spec.rb index bd823bf..938890f 100644 --- a/spec/graph/edge_spec.rb +++ b/spec/graph/edge_spec.rb @@ -7,30 +7,30 @@ module GraphNjae let(:v2) {Vertex.new :name => :v2} let(:v3) {Vertex.new :name => :v3} - describe "#initialize" do - it "creates an empty edge" do + describe '#initialize' do + it 'creates an empty edge' do e = Edge.new e.connections.should be_empty end - it "creates an edge with some parameters" do - e = Edge.new :value1 => 1, :value2 => "value2", :value3 => :v3 + it 'creates an edge with some parameters' do + e = Edge.new :value1 => 1, :value2 => 'value2', :value3 => :v3 e.value1.should == 1 - e.value2.should == "value2" + e.value2.should == 'value2' e.value3.should == :v3 e.value4.should be_nil end end # #initialize - describe "adds attribues" do - it "adds then reports arbitrary attributes" do + describe 'adds attribues' do + it 'adds then reports arbitrary attributes' do e.score = 15 e.score.should == 15 end end # adds attributes - describe "#<<" do - it "adds a new vertex to an edge (with a connection)" do + describe '#<<' do + it 'adds a new vertex to an edge (with a connection)' do e.connections.should be_empty e << v1 e.should have(1).connections @@ -45,7 +45,7 @@ module GraphNjae v2.edges.should include(e) end - it "adds several vertices to an edge" do + it 'adds several vertices to an edge' do e.connections.should be_empty e << v1 << v2 e.vertices.should include(v1) @@ -53,7 +53,7 @@ module GraphNjae e.should have(2).vertices end - it "adds a self-loop" do + it 'adds a self-loop' do e.connections.should be_empty e << v1 << v1 e.vertices.should include(v1) @@ -62,8 +62,8 @@ module GraphNjae end end # #<< - describe "connection_at" do - it "returns the connection that links to a vertex" do + describe 'connection_at' do + it 'returns the connection that links to a vertex' do e.connections.should be_empty e << v1 << v2 @@ -71,14 +71,14 @@ module GraphNjae e.connection_at(v2).end.should be v2 end - it "returns nil if there is no connection to that vertex" do + it 'returns nil if there is no connection to that vertex' do e.connections.should be_empty e << v1 << v2 e.connection_at(v3).should be nil end - it "returns the vertex for a self-loop" do + it 'returns the vertex for a self-loop' do e.connections.should be_empty e << v1 << v1 @@ -86,8 +86,8 @@ module GraphNjae end end # #connection_at - describe "other_end" do - it "returns the vertex at the other end of the given one" do + describe 'other_end' do + it 'returns the vertex at the other end of the given one' do e.connections.should be_empty e << v1 << v2 @@ -95,44 +95,42 @@ module GraphNjae e.other_end(v2).should be v1 end - it "returns the same vertex in a self-loop" do + it 'returns the same vertex in a self-loop' do e.connections.should be_empty e << v1 << v1 e.other_end(v1).should be v1 end - it "returns one of the connected edges if given a vertex not connected to it" do + it 'returns one of the connected edges if given a vertex not connected to it' do e.connections.should be_empty e << v1 << v2 [v1, v2].should include e.other_end(v3) end - it "returns nil if it can't return something sensible" do + it 'returns nil if it cannot return something sensible' do e.other_end(v1).should be_nil e << v1 e.other_end(v1).should be_nil end end # other_end - describe "#to_dot" do - it "describes an edge in dot notation" do + describe '#to_dot' do + it 'describes an edge in dot notation' do e << v1 << v2 - e.to_dot.should == "#{v1.object_id.to_s} -- #{v2.object_id.to_s};" end - it "describes an edge in dot notation, using given attributes" do + it 'describes an edge in dot notation, using given attributes' do e << v1 << v2 - #vdot = v1.to_dot :label => :name, :shape => :shape - #vdot.should == "#{v.object_id.to_s} {label = \"vertex\", shape = \"house\"};" + e.name = 'Edge name' + edot = e.to_dot :label => :name + edot.should == "#{v1.object_id.to_s} -- #{v2.object_id.to_s} {label = \"#{e.name}\"};" end - - it "describes an edge in dot notation, given a block" do + it 'describes an edge in dot notation, given a block' do e << v1 << v2 - e.to_dot {|e| e.object_id.to_s}.should == e.object_id.to_s end end # dot @@ -141,8 +139,8 @@ module GraphNjae describe Connection do let (:c) {Connection.new } - describe "adds attribues" do - it "adds then reports arbitrary attributes" do + describe 'adds attribues' do + it 'adds then reports arbitrary attributes' do c.score = 15 c.score.should == 15 end