summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Roberts <Markus@reality.com>2009-10-21 22:10:02 -0700
committerJames Turnbull <james@lovedthanlost.net>2009-10-23 15:49:31 +1100
commit4d9f76ad2653542e53a8020be9eeadb8f354837c (patch)
treee6f8d17ba1a8a1f86d0001797074c1478167d91f
parentb4bcfe9106c43855fbb4d1d147945ddb0e08ab34 (diff)
downloadpuppet-4d9f76ad2653542e53a8020be9eeadb8f354837c.tar.gz
puppet-4d9f76ad2653542e53a8020be9eeadb8f354837c.tar.xz
puppet-4d9f76ad2653542e53a8020be9eeadb8f354837c.zip
Fix for #2745 fakedata tests not working
The old fakedata test facility was not playing nicely with the spec tests; although it looped through all the files failures in any example file after the first were being ignored because of the way fakedataparse was interacting with the before blocks. Signed-off-by: Markus Roberts <Markus@reality.com>
-rwxr-xr-xspec/integration/provider/mailalias/aliases.rb8
-rwxr-xr-xspec/unit/provider/ssh_authorized_key/parsed.rb8
-rw-r--r--test/lib/puppettest/support/utils.rb24
3 files changed, 16 insertions, 24 deletions
diff --git a/spec/integration/provider/mailalias/aliases.rb b/spec/integration/provider/mailalias/aliases.rb
index a01bac269..fde0b001f 100755
--- a/spec/integration/provider/mailalias/aliases.rb
+++ b/spec/integration/provider/mailalias/aliases.rb
@@ -17,9 +17,9 @@ describe provider_class do
end
# #1560
- it "should be able to parse each example" do
- fakedata("data/providers/mailalias/aliases").each { |file|
+ PuppetTest.fakedata("data/providers/mailalias/aliases").each { |file|
+ it "should be able to parse the examples in #{file}" do
fakedataparse(file)
- }
- end
+ end
+ }
end
diff --git a/spec/unit/provider/ssh_authorized_key/parsed.rb b/spec/unit/provider/ssh_authorized_key/parsed.rb
index ade738b32..13bd08bd8 100755
--- a/spec/unit/provider/ssh_authorized_key/parsed.rb
+++ b/spec/unit/provider/ssh_authorized_key/parsed.rb
@@ -41,12 +41,12 @@ describe provider_class do
return text
end
- it "should be able to parse each example" do
- fakedata("data/providers/ssh_authorized_key/parsed").each { |file|
+ PuppetTest.fakedata("data/providers/ssh_authorized_key/parsed").each { |file|
+ it "should be able to parse example data in #{file}" do
puts "Parsing %s" % file
fakedataparse(file)
- }
- end
+ end
+ }
it "should be able to generate a basic authorized_keys file" do
key = mkkey({
diff --git a/test/lib/puppettest/support/utils.rb b/test/lib/puppettest/support/utils.rb
index 7491095de..655308d3b 100644
--- a/test/lib/puppettest/support/utils.rb
+++ b/test/lib/puppettest/support/utils.rb
@@ -91,22 +91,6 @@ module PuppetTest::Support::Utils
return trans
end
- # If there are any fake data files, retrieve them
- def fakedata(dir)
- ary = [basedir, "test"]
- ary += dir.split("/")
- dir = File.join(ary)
-
- unless FileTest.exists?(dir)
- raise Puppet::DevError, "No fakedata dir %s" % dir
- end
- files = Dir.entries(dir).reject { |f| f =~ /^\./ }.collect { |f|
- File.join(dir, f)
- }
-
- return files
- end
-
def fakefile(name)
ary = [PuppetTest.basedir, "test"]
ary += name.split("/")
@@ -169,4 +153,12 @@ end
module PuppetTest
include PuppetTest::Support::Utils
+
+ def self.fakedata(dir,pat='*')
+ glob = "#{basedir}/test/#{dir}/#{pat}"
+ files = Dir.glob(glob,File::FNM_PATHNAME)
+ raise Puppet::DevError, "No fakedata matching #{glob}" if files.empty?
+ files
+ end
+
end