summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Kanis <lars@greiz-reinsdorf.de>2018-01-06 19:20:15 +0100
committerSutou Kouhei <kou@clear-code.com>2020-01-15 06:27:03 +0900
commit6ece88205729991a3fdd8ffea08b2f6295ab3054 (patch)
tree5eeccd5bd383e12e8948ce05611eca472ddfb9d6
parent4cc9dc992b2fa38c3cd157d5d1eb2396bac57a47 (diff)
downloadbundler-6ece88205729991a3fdd8ffea08b2f6295ab3054.tar.gz
Add two specs for choosing platform specific gems
The first spec succeeds, but the second spec fails currently.
-rw-r--r--spec/resolver/platform_spec.rb29
1 files changed, 29 insertions, 0 deletions
diff --git a/spec/resolver/platform_spec.rb b/spec/resolver/platform_spec.rb
index fee0cf1f1c..090af258f7 100644
--- a/spec/resolver/platform_spec.rb
+++ b/spec/resolver/platform_spec.rb
@@ -28,6 +28,35 @@ RSpec.describe "Resolving platform craziness" do
end
end
+ it "takes the latest ruby gem, even if an older platform specific version is available" do
+ @index = build_index do
+ gem "foo", "1.0.0"
+ gem "foo", "1.0.0", "x64-mingw32"
+ gem "foo", "1.1.0"
+ end
+ dep "foo"
+ platforms "x64-mingw32"
+
+ should_resolve_as %w[foo-1.1.0]
+ end
+
+ it "takes the latest ruby gem if the platform specific gem doesn't match the required_ruby_version" do
+ @index = build_index do
+ gem "foo", "1.0.0"
+ gem "foo", "1.0.0", "x64-mingw32"
+ gem "foo", "1.1.0"
+ gem "foo", "1.1.0", "x64-mingw32" do |s|
+ s.required_ruby_version = [">= 2.0", "< 2.4"]
+ end
+ gem "ruby\0", "2.5.1"
+ end
+ dep "foo"
+ dep "ruby\0", "2.5.1"
+ platforms "x64-mingw32"
+
+ should_resolve_as %w[foo-1.1.0]
+ end
+
describe "with mingw32" do
before :each do
@index = build_index do