isolate 1.8.0 → 1.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG.rdoc +4 -0
- data/lib/isolate/rake.rb +4 -2
- data/lib/isolate.rb +6 -6
- data/test/test_isolate.rb +20 -0
- metadata +2 -2
data/CHANGELOG.rdoc
CHANGED
data/lib/isolate/rake.rb
CHANGED
@@ -1,9 +1,11 @@
|
|
1
1
|
namespace :isolate do
|
2
2
|
desc "Generate a .gems manifest for your isolated gems."
|
3
|
-
task :dotgems do
|
3
|
+
task :dotgems, [:env] do |_, args|
|
4
|
+
env = args.env || Isolate.env
|
5
|
+
|
4
6
|
File.open ".gems", "wb" do |f|
|
5
7
|
Isolate.instance.entries.each do |entry|
|
6
|
-
next unless entry.
|
8
|
+
next unless entry.matches? env
|
7
9
|
|
8
10
|
gems = [entry.name]
|
9
11
|
gems << "--version '#{entry.requirement}'"
|
data/lib/isolate.rb
CHANGED
@@ -21,11 +21,15 @@ class Isolate
|
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
24
|
-
VERSION = "1.8.
|
24
|
+
VERSION = "1.8.1" # :nodoc:
|
25
25
|
|
26
26
|
attr_reader :entries # :nodoc:
|
27
27
|
attr_reader :path # :nodoc:
|
28
28
|
|
29
|
+
def self.env # :nodoc:
|
30
|
+
ENV["ISOLATE_ENV"] || ENV["RAILS_ENV"] || ENV["RACK_ENV"] || "development"
|
31
|
+
end
|
32
|
+
|
29
33
|
# Declare an isolated RubyGems environment, installed in +path+. The
|
30
34
|
# block given will be <tt>instance_eval</tt>ed, see Isolate#gem and
|
31
35
|
# Isolate#environment for the sort of stuff you can do.
|
@@ -81,11 +85,7 @@ class Isolate
|
|
81
85
|
def activate environment = nil
|
82
86
|
enable unless enabled?
|
83
87
|
|
84
|
-
env = (environment
|
85
|
-
ENV["ISOLATE_ENV"] ||
|
86
|
-
ENV["RAILS_ENV"] ||
|
87
|
-
ENV["RACK_ENV"] ||
|
88
|
-
"development").to_s
|
88
|
+
env = (environment || self.class.env).to_s
|
89
89
|
|
90
90
|
install env if install?
|
91
91
|
|
data/test/test_isolate.rb
CHANGED
@@ -8,6 +8,7 @@ class TestIsolate < MiniTest::Unit::TestCase
|
|
8
8
|
|
9
9
|
def setup
|
10
10
|
@isolate = Isolate.new "tmp/gems", :install => false, :verbose => false
|
11
|
+
@env = ENV.to_hash
|
11
12
|
end
|
12
13
|
|
13
14
|
def teardown
|
@@ -16,6 +17,25 @@ class TestIsolate < MiniTest::Unit::TestCase
|
|
16
17
|
Gem::DependencyInstaller.reset_value
|
17
18
|
Gem::Uninstaller.reset_value
|
18
19
|
FileUtils.rm_rf "tmp/gems"
|
20
|
+
ENV.replace @env
|
21
|
+
end
|
22
|
+
|
23
|
+
def test_self_env
|
24
|
+
assert_equal "development", Isolate.env
|
25
|
+
|
26
|
+
ENV["RAILS_ENV"] = "foo"
|
27
|
+
|
28
|
+
assert_equal "foo", Isolate.env
|
29
|
+
|
30
|
+
ENV["RAILS_ENV"] = nil
|
31
|
+
ENV["RACK_ENV"] = "bar"
|
32
|
+
|
33
|
+
assert_equal "bar", Isolate.env
|
34
|
+
|
35
|
+
ENV["RACK_ENV"] = nil
|
36
|
+
ENV["ISOLATE_ENV"] = "baz"
|
37
|
+
|
38
|
+
assert_equal "baz", Isolate.env
|
19
39
|
end
|
20
40
|
|
21
41
|
def test_self_gems
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: isolate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.8.
|
4
|
+
version: 1.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Barnette
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2010-01-
|
13
|
+
date: 2010-01-13 00:00:00 -08:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|