gem_loader 0.0.3 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +8 -6
- data/VERSION +1 -1
- data/depends.rb +6 -3
- data/gem_loader.gemspec +23 -4
- data/lib/gem_loader/base/dsl.rb +31 -0
- data/lib/gem_loader/base.rb +7 -16
- data/lib/gem_loader/gem/dsl.rb +17 -0
- data/lib/gem_loader/gem.rb +8 -14
- data/lib/gem_loader/gemspec.rb +24 -0
- data/lib/gem_loader/scope/dsl.rb +28 -0
- data/lib/gem_loader/scope.rb +10 -25
- data/lib/gem_loader.rb +1 -2
- data/spec/gem_loader/base/dsl_spec.rb +20 -0
- data/spec/gem_loader/base_spec.rb +6 -0
- data/spec/gem_loader/gem_spec.rb +36 -0
- data/spec/gem_loader/gemspec_spec.rb +30 -0
- data/spec/gem_loader/scope/dsl_spec.rb +19 -0
- data/spec/gem_loader/scope_spec.rb +28 -0
- data/spec/{lib/gem_loader_spec.rb → gem_loader_spec.rb} +0 -0
- data/spec/spec_helper.rb +3 -0
- metadata +36 -7
data/Rakefile
CHANGED
@@ -12,16 +12,18 @@ namespace :spec do
|
|
12
12
|
spec.libs = [ 'lib', 'spec' ]
|
13
13
|
spec.pattern = 'spec/**/*_spec.rb'
|
14
14
|
spec.rcov = true
|
15
|
+
spec.rcov_opts << ['--exclude', 'rcov']
|
15
16
|
end
|
16
17
|
end
|
17
18
|
|
18
19
|
|
19
|
-
Jeweler::Tasks.new do |
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
20
|
+
Jeweler::Tasks.new do |spec|
|
21
|
+
spec.name = "gem_loader"
|
22
|
+
spec.summary = "a tiny gem's dependencies loader."
|
23
|
+
spec.email = "Sunteya@gmail.com"
|
24
|
+
spec.homepage = "http://github.com/sunteya/gem_loader"
|
25
|
+
spec.authors = ["Sunteya"]
|
26
|
+
GemLoader.gemspec.integrate(spec)
|
25
27
|
end
|
26
28
|
Jeweler::GemcutterTasks.new
|
27
29
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0
|
1
|
+
0.1.0
|
data/depends.rb
CHANGED
@@ -3,14 +3,17 @@ require File.expand_path("../lib/gem_loader", __FILE__)
|
|
3
3
|
|
4
4
|
|
5
5
|
GemLoader.setup do
|
6
|
+
|
7
|
+
scope :development => :test
|
8
|
+
|
6
9
|
scope :test do
|
7
|
-
gem :rspec, ">= 1.3.0", :require =>
|
10
|
+
gem :rspec, ">= 1.3.0", :require => nil
|
8
11
|
end
|
9
12
|
|
10
|
-
scope :rakefile do
|
13
|
+
scope :rakefile => :test do
|
11
14
|
gem :rake, ">= 0.8.7"
|
12
15
|
gem :jeweler, ">= 1.4.0"
|
13
16
|
|
14
|
-
require
|
17
|
+
require "spec/rake/spectask"
|
15
18
|
end
|
16
19
|
end
|
data/gem_loader.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{gem_loader}
|
8
|
-
s.version = "0.0
|
8
|
+
s.version = "0.1.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Sunteya"]
|
12
|
-
s.date = %q{2010-03-
|
12
|
+
s.date = %q{2010-03-27}
|
13
13
|
s.email = %q{Sunteya@gmail.com}
|
14
14
|
s.extra_rdoc_files = [
|
15
15
|
"LICENSE",
|
@@ -25,9 +25,19 @@ Gem::Specification.new do |s|
|
|
25
25
|
"gem_loader.gemspec",
|
26
26
|
"lib/gem_loader.rb",
|
27
27
|
"lib/gem_loader/base.rb",
|
28
|
+
"lib/gem_loader/base/dsl.rb",
|
28
29
|
"lib/gem_loader/gem.rb",
|
30
|
+
"lib/gem_loader/gem/dsl.rb",
|
31
|
+
"lib/gem_loader/gemspec.rb",
|
29
32
|
"lib/gem_loader/scope.rb",
|
30
|
-
"
|
33
|
+
"lib/gem_loader/scope/dsl.rb",
|
34
|
+
"spec/gem_loader/base/dsl_spec.rb",
|
35
|
+
"spec/gem_loader/base_spec.rb",
|
36
|
+
"spec/gem_loader/gem_spec.rb",
|
37
|
+
"spec/gem_loader/gemspec_spec.rb",
|
38
|
+
"spec/gem_loader/scope/dsl_spec.rb",
|
39
|
+
"spec/gem_loader/scope_spec.rb",
|
40
|
+
"spec/gem_loader_spec.rb",
|
31
41
|
"spec/spec.opts",
|
32
42
|
"spec/spec_helper.rb"
|
33
43
|
]
|
@@ -37,7 +47,13 @@ Gem::Specification.new do |s|
|
|
37
47
|
s.rubygems_version = %q{1.3.6}
|
38
48
|
s.summary = %q{a tiny gem's dependencies loader.}
|
39
49
|
s.test_files = [
|
40
|
-
"spec/
|
50
|
+
"spec/gem_loader/base/dsl_spec.rb",
|
51
|
+
"spec/gem_loader/base_spec.rb",
|
52
|
+
"spec/gem_loader/gem_spec.rb",
|
53
|
+
"spec/gem_loader/gemspec_spec.rb",
|
54
|
+
"spec/gem_loader/scope/dsl_spec.rb",
|
55
|
+
"spec/gem_loader/scope_spec.rb",
|
56
|
+
"spec/gem_loader_spec.rb",
|
41
57
|
"spec/spec_helper.rb"
|
42
58
|
]
|
43
59
|
|
@@ -46,9 +62,12 @@ Gem::Specification.new do |s|
|
|
46
62
|
s.specification_version = 3
|
47
63
|
|
48
64
|
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
65
|
+
s.add_development_dependency(%q<rspec>, [">= 1.3.0"])
|
49
66
|
else
|
67
|
+
s.add_dependency(%q<rspec>, [">= 1.3.0"])
|
50
68
|
end
|
51
69
|
else
|
70
|
+
s.add_dependency(%q<rspec>, [">= 1.3.0"])
|
52
71
|
end
|
53
72
|
end
|
54
73
|
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module GemLoader
|
2
|
+
class Base
|
3
|
+
|
4
|
+
def dsl(&block)
|
5
|
+
Dsl.new(self, &block)
|
6
|
+
end
|
7
|
+
|
8
|
+
class Dsl
|
9
|
+
attr_accessor :parent
|
10
|
+
|
11
|
+
def initialize(parent, &block)
|
12
|
+
self.parent = parent
|
13
|
+
instance_eval(&block) if block
|
14
|
+
end
|
15
|
+
|
16
|
+
def scope(arg, &block)
|
17
|
+
case arg
|
18
|
+
when Hash
|
19
|
+
name = arg.keys.first
|
20
|
+
dep_names = [ arg[name] ].flatten
|
21
|
+
else
|
22
|
+
name = arg
|
23
|
+
dep_names = []
|
24
|
+
end
|
25
|
+
|
26
|
+
dep_scopes = dep_names.map{ |dep_name| self.parent.scope(dep_name) }
|
27
|
+
self.parent.scope(name, dep_scopes).dsl(&block)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
data/lib/gem_loader/base.rb
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
require File.expand_path("../scope", __FILE__)
|
2
|
+
require File.expand_path("../gem", __FILE__)
|
3
|
+
require File.expand_path("../base/dsl", __FILE__)
|
4
|
+
|
1
5
|
module GemLoader
|
2
6
|
class Base
|
3
7
|
attr_accessor :scopes
|
@@ -6,13 +10,13 @@ module GemLoader
|
|
6
10
|
self.scopes = {}
|
7
11
|
end
|
8
12
|
|
9
|
-
def scope(name)
|
13
|
+
def scope(name, depend_scopes = [])
|
10
14
|
self.scopes ||= {}
|
11
|
-
self.scopes[name] ||= Scope.new(name)
|
15
|
+
self.scopes[name] ||= Scope.new(name, depend_scopes)
|
12
16
|
end
|
13
17
|
|
14
18
|
def setup(&block)
|
15
|
-
|
19
|
+
self.dsl(&block)
|
16
20
|
end
|
17
21
|
|
18
22
|
def load(*args)
|
@@ -30,18 +34,5 @@ module GemLoader
|
|
30
34
|
self.scope(scope_name).require
|
31
35
|
end
|
32
36
|
end
|
33
|
-
|
34
|
-
class Dsl
|
35
|
-
attr_accessor :parent
|
36
|
-
|
37
|
-
def initialize(parent, &block)
|
38
|
-
self.parent = parent
|
39
|
-
instance_eval(&block)
|
40
|
-
end
|
41
|
-
|
42
|
-
def scope(name, &block)
|
43
|
-
self.parent.scope(name).dsl(&block)
|
44
|
-
end
|
45
|
-
end
|
46
37
|
end
|
47
38
|
end
|
data/lib/gem_loader/gem.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
require File.expand_path("../gem/dsl", __FILE__)
|
2
|
+
|
1
3
|
module GemLoader
|
2
4
|
class Gem
|
3
5
|
attr_accessor :name, :version, :options, :requires
|
@@ -8,11 +10,15 @@ module GemLoader
|
|
8
10
|
self.options = options || {}
|
9
11
|
end
|
10
12
|
|
13
|
+
def gem_args
|
14
|
+
self.version ? [self.name, self.version] : [self.name]
|
15
|
+
end
|
16
|
+
|
11
17
|
def load
|
12
18
|
if self.version
|
13
|
-
Kernel.send :gem,
|
19
|
+
Kernel.send :gem, *gem_args
|
14
20
|
else
|
15
|
-
Kernel.send :gem,
|
21
|
+
Kernel.send :gem, *gem_args
|
16
22
|
end
|
17
23
|
end
|
18
24
|
|
@@ -26,17 +32,5 @@ module GemLoader
|
|
26
32
|
end
|
27
33
|
end
|
28
34
|
|
29
|
-
def dsl(&block)
|
30
|
-
Dsl.new(self, &block)
|
31
|
-
end
|
32
|
-
|
33
|
-
class Dsl
|
34
|
-
attr_accessor :parent
|
35
|
-
|
36
|
-
def initialize(parent, &block)
|
37
|
-
self.parent = parent
|
38
|
-
instance_eval(&block) if block
|
39
|
-
end
|
40
|
-
end
|
41
35
|
end
|
42
36
|
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module GemLoader
|
2
|
+
|
3
|
+
class Gemspec
|
4
|
+
attr_accessor :base
|
5
|
+
|
6
|
+
def initialize(base)
|
7
|
+
self.base = base
|
8
|
+
end
|
9
|
+
|
10
|
+
def integrate(spec)
|
11
|
+
base.scope(:runtime).all_gems.each do |gem|
|
12
|
+
spec.add_runtime_dependency(*gem.gem_args)
|
13
|
+
end
|
14
|
+
|
15
|
+
base.scope(:development).all_gems.each do |gem|
|
16
|
+
spec.add_development_dependency(*gem.gem_args)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.gemspec
|
22
|
+
Gemspec.new(self.instance)
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module GemLoader
|
2
|
+
class Scope
|
3
|
+
|
4
|
+
def dsl(&block)
|
5
|
+
Dsl.new(self, &block)
|
6
|
+
end
|
7
|
+
|
8
|
+
class Dsl
|
9
|
+
attr_accessor :parent
|
10
|
+
|
11
|
+
def initialize(parent, &block)
|
12
|
+
self.parent = parent
|
13
|
+
instance_eval(&block) if block
|
14
|
+
end
|
15
|
+
|
16
|
+
def gem(*args, &block)
|
17
|
+
options = args.pop if args.last.is_a?(Hash)
|
18
|
+
name, version = *args
|
19
|
+
|
20
|
+
self.parent.gem(name, version, options).dsl(&block)
|
21
|
+
end
|
22
|
+
|
23
|
+
def require(*args)
|
24
|
+
self.parent.libs << [ args ].flatten
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/gem_loader/scope.rb
CHANGED
@@ -1,13 +1,20 @@
|
|
1
|
+
require File.expand_path("../scope/dsl", __FILE__)
|
2
|
+
|
1
3
|
module GemLoader
|
2
4
|
class Scope
|
3
|
-
attr_accessor :name, :gems, :libs
|
5
|
+
attr_accessor :name, :depend_scopes, :gems, :libs
|
4
6
|
|
5
|
-
def initialize(name)
|
7
|
+
def initialize(name, depend_scopes = [])
|
6
8
|
self.name = name
|
9
|
+
self.depend_scopes = depend_scopes
|
7
10
|
self.gems = []
|
8
11
|
self.libs = []
|
9
12
|
end
|
10
13
|
|
14
|
+
def all_gems
|
15
|
+
[ self.depend_scopes.map(&:all_gems) + self.gems ].flatten
|
16
|
+
end
|
17
|
+
|
11
18
|
def load
|
12
19
|
self.gems.each do |gem|
|
13
20
|
gem.load
|
@@ -29,28 +36,6 @@ module GemLoader
|
|
29
36
|
self.gems.last
|
30
37
|
end
|
31
38
|
|
32
|
-
|
33
|
-
Dsl.new(self, &block)
|
34
|
-
end
|
35
|
-
|
36
|
-
class Dsl
|
37
|
-
attr_accessor :parent
|
38
|
-
|
39
|
-
def initialize(parent, &block)
|
40
|
-
self.parent = parent
|
41
|
-
instance_eval(&block)
|
42
|
-
end
|
43
|
-
|
44
|
-
def gem(*args, &block)
|
45
|
-
options = args.pop if args.last.is_a?(Hash)
|
46
|
-
name, version = *args
|
47
|
-
|
48
|
-
self.parent.gem(name, version, options).dsl(&block)
|
49
|
-
end
|
50
|
-
|
51
|
-
def require(*args)
|
52
|
-
self.parent.libs << [ args ].flatten
|
53
|
-
end
|
54
|
-
end
|
39
|
+
|
55
40
|
end
|
56
41
|
end
|
data/lib/gem_loader.rb
CHANGED
@@ -0,0 +1,20 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe GemLoader::Base::Dsl do
|
4
|
+
|
5
|
+
before(:each) do
|
6
|
+
@base = GemLoader::Base.new
|
7
|
+
@dsl = GemLoader::Base::Dsl.new(@base)
|
8
|
+
end
|
9
|
+
|
10
|
+
it "should say scope success" do
|
11
|
+
@dsl.scope(:foo)
|
12
|
+
@base.scopes[:foo].should_not be_nil
|
13
|
+
end
|
14
|
+
|
15
|
+
it "should say scope with depends" do
|
16
|
+
@dsl.scope(:foo => [:bar])
|
17
|
+
@base.scopes[:bar].should_not be_nil
|
18
|
+
@base.scopes[:foo].depend_scopes.should be_include @base.scopes[:bar]
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe GemLoader::Gem do
|
4
|
+
|
5
|
+
describe "should load and require by" do
|
6
|
+
it "name only" do
|
7
|
+
@gem = GemLoader::Gem.new("foo")
|
8
|
+
Kernel.should_receive(:gem).with("foo")
|
9
|
+
Kernel.should_receive(:require).with("foo")
|
10
|
+
end
|
11
|
+
|
12
|
+
it "name and version" do
|
13
|
+
@gem = GemLoader::Gem.new("foo", "0.1")
|
14
|
+
Kernel.should_receive(:gem).with("foo", "0.1")
|
15
|
+
Kernel.should_receive(:require).with("foo")
|
16
|
+
end
|
17
|
+
|
18
|
+
it "with require lib" do
|
19
|
+
@gem = GemLoader::Gem.new("foo", "0.1", :require => "lib")
|
20
|
+
Kernel.should_receive(:gem).with("foo", "0.1")
|
21
|
+
Kernel.stub!(:require).with("lib")
|
22
|
+
end
|
23
|
+
|
24
|
+
it "skip require" do
|
25
|
+
@gem = GemLoader::Gem.new("foo", "0.1", :require => nil)
|
26
|
+
Kernel.should_receive(:gem).with("foo", "0.1")
|
27
|
+
Kernel.stub!(:require).and_raise("fail")
|
28
|
+
end
|
29
|
+
|
30
|
+
after(:each) do
|
31
|
+
@gem.load
|
32
|
+
@gem.require
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe GemLoader::Gemspec do
|
4
|
+
before(:each) do
|
5
|
+
@base = GemLoader::Base.new
|
6
|
+
GemLoader.stub!(:instance).and_return(@base)
|
7
|
+
end
|
8
|
+
|
9
|
+
it "should integrate to gemspec" do
|
10
|
+
@base.setup do
|
11
|
+
scope :runtime do
|
12
|
+
gem "run", "= 0.2"
|
13
|
+
end
|
14
|
+
|
15
|
+
scope :development do
|
16
|
+
gem "dev"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
spec = Gem::Specification.new
|
21
|
+
GemLoader.gemspec.integrate(spec)
|
22
|
+
spec.runtime_dependencies.each do |gem|
|
23
|
+
gem.name.should == "run"
|
24
|
+
gem.requirement.requirements.last.should == Gem::Requirement.parse("= 0.2")
|
25
|
+
end
|
26
|
+
|
27
|
+
spec.development_dependencies.map(&:name).should == ["dev"]
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe GemLoader::Scope::Dsl do
|
4
|
+
|
5
|
+
before(:each) do
|
6
|
+
@scope = GemLoader::Scope.new("test")
|
7
|
+
@dsl = GemLoader::Scope::Dsl.new(@scope)
|
8
|
+
end
|
9
|
+
|
10
|
+
it "should say gem success" do
|
11
|
+
@dsl.gem(:foo)
|
12
|
+
@scope.gems.last.name.should == "foo"
|
13
|
+
end
|
14
|
+
|
15
|
+
it "should say require success" do
|
16
|
+
@dsl.require("bar")
|
17
|
+
@scope.libs.last.should == [ "bar" ]
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe GemLoader::Scope do
|
4
|
+
|
5
|
+
before(:each) do
|
6
|
+
@scope = GemLoader::Scope.new("test")
|
7
|
+
end
|
8
|
+
|
9
|
+
it "should require by gem and libs" do
|
10
|
+
@scope.gems << GemLoader::Gem.new("foo")
|
11
|
+
@scope.libs << [ "bar", "biz" ]
|
12
|
+
|
13
|
+
Kernel.should_receive(:require).with("foo")
|
14
|
+
Kernel.should_receive(:require).with("bar")
|
15
|
+
Kernel.should_receive(:require).with("biz")
|
16
|
+
|
17
|
+
@scope.require
|
18
|
+
end
|
19
|
+
|
20
|
+
it "should include depends scope gems" do
|
21
|
+
depend_scope = GemLoader::Scope.new("depend")
|
22
|
+
depend_scope.gems << GemLoader::Gem.new("depend_gem")
|
23
|
+
@scope.gems << GemLoader::Gem.new("test_gem")
|
24
|
+
@scope.depend_scopes << depend_scope
|
25
|
+
|
26
|
+
@scope.all_gems.should == [ depend_scope.gems + @scope.gems ].flatten
|
27
|
+
end
|
28
|
+
end
|
File without changes
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
|
|
4
4
|
prerelease: false
|
5
5
|
segments:
|
6
6
|
- 0
|
7
|
+
- 1
|
7
8
|
- 0
|
8
|
-
|
9
|
-
version: 0.0.3
|
9
|
+
version: 0.1.0
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Sunteya
|
@@ -14,10 +14,23 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-03-
|
17
|
+
date: 2010-03-27 00:00:00 +08:00
|
18
18
|
default_executable:
|
19
|
-
dependencies:
|
20
|
-
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
name: rspec
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - ">="
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
segments:
|
28
|
+
- 1
|
29
|
+
- 3
|
30
|
+
- 0
|
31
|
+
version: 1.3.0
|
32
|
+
type: :development
|
33
|
+
version_requirements: *id001
|
21
34
|
description:
|
22
35
|
email: Sunteya@gmail.com
|
23
36
|
executables: []
|
@@ -37,9 +50,19 @@ files:
|
|
37
50
|
- gem_loader.gemspec
|
38
51
|
- lib/gem_loader.rb
|
39
52
|
- lib/gem_loader/base.rb
|
53
|
+
- lib/gem_loader/base/dsl.rb
|
40
54
|
- lib/gem_loader/gem.rb
|
55
|
+
- lib/gem_loader/gem/dsl.rb
|
56
|
+
- lib/gem_loader/gemspec.rb
|
41
57
|
- lib/gem_loader/scope.rb
|
42
|
-
-
|
58
|
+
- lib/gem_loader/scope/dsl.rb
|
59
|
+
- spec/gem_loader/base/dsl_spec.rb
|
60
|
+
- spec/gem_loader/base_spec.rb
|
61
|
+
- spec/gem_loader/gem_spec.rb
|
62
|
+
- spec/gem_loader/gemspec_spec.rb
|
63
|
+
- spec/gem_loader/scope/dsl_spec.rb
|
64
|
+
- spec/gem_loader/scope_spec.rb
|
65
|
+
- spec/gem_loader_spec.rb
|
43
66
|
- spec/spec.opts
|
44
67
|
- spec/spec_helper.rb
|
45
68
|
has_rdoc: true
|
@@ -73,5 +96,11 @@ signing_key:
|
|
73
96
|
specification_version: 3
|
74
97
|
summary: a tiny gem's dependencies loader.
|
75
98
|
test_files:
|
76
|
-
- spec/
|
99
|
+
- spec/gem_loader/base/dsl_spec.rb
|
100
|
+
- spec/gem_loader/base_spec.rb
|
101
|
+
- spec/gem_loader/gem_spec.rb
|
102
|
+
- spec/gem_loader/gemspec_spec.rb
|
103
|
+
- spec/gem_loader/scope/dsl_spec.rb
|
104
|
+
- spec/gem_loader/scope_spec.rb
|
105
|
+
- spec/gem_loader_spec.rb
|
77
106
|
- spec/spec_helper.rb
|