spec/acceptance/solutions_spec.rb in solve-0.4.4 vs spec/acceptance/solutions_spec.rb in solve-0.5.0
- old
+ new
@@ -1,9 +1,9 @@
require 'spec_helper'
describe "Solutions" do
-
+
it "chooses the correct artifact for the demands" do
graph = Solve::Graph.new
graph.artifacts("mysql", "2.0.0")
graph.artifacts("mysql", "1.2.0")
graph.artifacts("nginx", "1.0.0").depends("mysql", "= 1.2.0")
@@ -16,17 +16,17 @@
it "chooses the best artifact for the demands" do
graph = Solve::Graph.new
graph.artifacts("mysql", "2.0.0")
graph.artifacts("mysql", "1.2.0")
graph.artifacts("nginx", "1.0.0").depends("mysql", ">= 1.2.0")
-
+
result = Solve.it!(graph, [['nginx', '= 1.0.0'], ['mysql']])
result.should eql("nginx" => "1.0.0", "mysql" => "2.0.0")
end
- it "raises NoSolutionError when a solution cannot be found" do
+ it "raises NoSolutionError when a solution cannot be found" do
graph = Solve::Graph.new
graph.artifacts("mysql", "1.2.0")
lambda {
Solve.it!(graph, ['mysql', '>= 2.0.0'])
@@ -74,11 +74,11 @@
graph.artifacts("B", "1.0.0").depends("C", "1.0.0")
graph.artifacts("C", "1.0.0").depends("A", "1.0.0")
result = Solve.it!(graph, [["A", "1.0.0"]])
- result.should eql("A" => "1.0.0",
+ result.should eql("A" => "1.0.0",
"B" => "1.0.0",
"C" => "1.0.0")
end
it "finds the correct solution when there is a p shaped depenency chain" do
@@ -88,11 +88,11 @@
graph.artifacts("B", "1.0.0").depends("C", "1.0.0")
graph.artifacts("C", "1.0.0").depends("B", "1.0.0")
result = Solve.it!(graph, [["A", "1.0.0"]])
- result.should eql("A" => "1.0.0",
+ result.should eql("A" => "1.0.0",
"B" => "1.0.0",
"C" => "1.0.0")
end
it "finds the correct solution when there is a diamond shaped dependency" do
@@ -139,20 +139,20 @@
# ensure we can't find a solution in the above
graph.artifacts("D", "1.0.0").depends("A", "< 0.0.0")
# Add a solution to the graph that should be reached only after
- # all of the others have been tried
+ # all of the others have been tried
# it must be circular to ensure that no other branch can find it
graph.artifacts("A", "0.0.0").depends("B", "0.0.0")
graph.artifacts("B", "0.0.0").depends("C", "0.0.0")
graph.artifacts("C", "0.0.0").depends("D", "0.0.0")
graph.artifacts("D", "0.0.0").depends("A", "0.0.0")
demands = [["A"]]
result = Solve.it!(graph, demands)
-
+
result.should eql({ "A" => "0.0.0",
"B" => "0.0.0",
"C" => "0.0.0",
"D" => "0.0.0"})