aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/test
diff options
context:
space:
mode:
authorJack Nagel2013-09-17 21:25:40 -0500
committerJack Nagel2013-09-17 21:29:53 -0500
commit9c7a18bdcb76630ba6649a90cbee020181eb382c (patch)
treeca830d8b68f0642d50989e2416f9e86818283275 /Library/Homebrew/test
parentb40b46e3f6d1e1a6566efa8912be24930ce29175 (diff)
downloadbrew-9c7a18bdcb76630ba6649a90cbee020181eb382c.tar.bz2
Make spec-scoped resources override top-level resources
Diffstat (limited to 'Library/Homebrew/test')
-rw-r--r--Library/Homebrew/test/test_software_spec.rb29
1 files changed, 29 insertions, 0 deletions
diff --git a/Library/Homebrew/test/test_software_spec.rb b/Library/Homebrew/test/test_software_spec.rb
index 7d67d90d3..febd33b39 100644
--- a/Library/Homebrew/test/test_software_spec.rb
+++ b/Library/Homebrew/test/test_software_spec.rb
@@ -2,6 +2,35 @@ require 'testing_env'
require 'software_spec'
require 'bottles'
+class SoftwareSpecTests < Test::Unit::TestCase
+ def setup
+ @spec = SoftwareSpec.new
+ end
+
+ def test_resource
+ @spec.resource('foo') { url 'foo-1.0' }
+ assert @spec.resource?('foo')
+ end
+
+ def test_raises_when_duplicate_resources_are_defined
+ @spec.resource('foo') { url 'foo-1.0' }
+ assert_raises(DuplicateResourceError) do
+ @spec.resource('foo') { url 'foo-1.0' }
+ end
+ end
+
+ def test_raises_when_accessing_missing_resources
+ assert_raises(ResourceMissingError) { @spec.resource('foo') }
+ end
+
+ def test_resource_owner
+ owner = Object.new
+ @spec.resource('foo') { url 'foo-1.0' }
+ @spec.owner = owner
+ @spec.resources.each_value { |r| assert_equal owner, r.owner }
+ end
+end
+
class HeadSoftwareSpecTests < Test::Unit::TestCase
include VersionAssertions