Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

revamped gem_path_support tests. stripped whitespace. broke tests up.

refactored where I could. reformatted properly.
  • Loading branch information...
commit 68200eb5efb3200972f4612c155d15c411594a96 1 parent b8e5566
@zenspider zenspider authored
Showing with 45 additions and 27 deletions.
  1. +45 −27 test/rubygems/test_gem_path_support.rb
View
72 test/rubygems/test_gem_path_support.rb
@@ -4,44 +4,62 @@
require 'fileutils'
class TestGemPathSupport < Gem::TestCase
- def test_constructor
+ def setup
+ super
+
ENV["GEM_HOME"] = @tempdir
ENV["GEM_PATH"] = [@tempdir, "something"].join(File::PATH_SEPARATOR)
+ end
+ def test_initialize
ps = Gem::PathSupport.new
- assert_equal ENV, ps.env, "defaults to ENV"
- assert_equal Gem::Path.new(ENV["GEM_HOME"]), ps.home,
- "defaults to GEM_HOME"
+ assert_equal ENV, ps.env
+ assert_equal Gem::Path.new(ENV["GEM_HOME"]), ps.home
+
+ expected = util_path
+ assert_equal expected, ps.path, "defaults to GEM_PATH"
+ end
+
+ def test_initialize_home
+ ps = Gem::PathSupport.new "GEM_HOME" => "#{@tempdir}/foo"
- assert_equal ENV["GEM_PATH"].
- split(File::PATH_SEPARATOR).
- map { |x| Gem::Path.new x },
- ps.path,
- "defaults to GEM_PATH"
+ refute_equal ENV, ps.env
+ assert_equal Gem::Path.new(@tempdir, "foo"), ps.home
- ps = Gem::PathSupport.new({ :home => "#{@tempdir}/foo" })
+ expected = util_path + [Gem::Path.new(@tempdir, 'foo')]
+ assert_equal expected, ps.path
+ end
- refute_equal ENV, ps.env, "not equal to env when passed a hash"
- assert_equal Gem::Path.new(@tempdir, "foo"), ps.home,
- "home is the one specified"
+ def test_initialize_path
+ ps = Gem::PathSupport.new "GEM_PATH" => %W[#{@tempdir}/foo #{@tempdir}/bar]
- assert_equal ENV["GEM_PATH"].
- split(File::PATH_SEPARATOR).
- map { |x| Gem::Path.new x } + [Gem::Path.new(@tempdir, 'foo')],
- ps.path,
- "still GEM_PATH, with a proper GEM_HOME"
+ refute_equal ENV, ps.env
+ assert_equal Gem::Path.new(ENV["GEM_HOME"]), ps.home
- ps = Gem::PathSupport.new({ :path => %W[#{@tempdir}/foo #{@tempdir}/bar] })
+ expected = [
+ Gem::Path.new(@tempdir, 'foo'),
+ Gem::Path.new(@tempdir, 'bar'),
+ Gem::Path.new(ENV["GEM_HOME"])
+ ]
- refute_equal ENV, ps.env, "not equal to env when passed a hash"
- assert_equal Gem::Path.new(ENV["GEM_HOME"]), ps.home,
- "when not passed, GEM_HOME"
+ assert_equal expected, ps.path
+ end
+
+ def test_initialize_home_path
+ ps = Gem::PathSupport.new("GEM_HOME" => "#{@tempdir}/foo",
+ "GEM_PATH" => %W[#{@tempdir}/foo #{@tempdir}/bar])
+
+ refute_equal ENV, ps.env
+ assert_equal Gem::Path.new(@tempdir, "foo"), ps.home
+
+ expected = [Gem::Path.new(@tempdir, 'foo'), Gem::Path.new(@tempdir, 'bar')]
+ assert_equal expected, ps.path
+ end
- assert_equal [
- Gem::Path.new(@tempdir, 'foo'),
- Gem::Path.new(@tempdir, 'bar'),
- Gem::Path.new(ENV["GEM_HOME"])
- ], ps.path, "when passed, is the path specified + GEM_HOME"
+ def util_path
+ ENV["GEM_PATH"].split(File::PATH_SEPARATOR).map { |x|
+ Gem::Path.new x
+ }
end
end
Please sign in to comment.
Something went wrong with that request. Please try again.