summaryrefslogtreecommitdiff
path: root/spec/lib/puppet_spec/pops.rb
diff options
context:
space:
mode:
authorMicah <micah@leap.se>2016-05-24 10:19:33 -0400
committerMicah <micah@leap.se>2016-05-24 10:19:33 -0400
commit1da5dc55ee48fcd437f5b5df00a5b2f3991ec9f1 (patch)
tree1794e812d83facd93b3007c42632c63ddf1eb2fc /spec/lib/puppet_spec/pops.rb
Squashed 'puppet/modules/stdlib/' content from commit 7112363
git-subtree-dir: puppet/modules/stdlib git-subtree-split: 71123634744b9fe2ec7d6a3e38e9789fd84801e3
Diffstat (limited to 'spec/lib/puppet_spec/pops.rb')
-rwxr-xr-xspec/lib/puppet_spec/pops.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/spec/lib/puppet_spec/pops.rb b/spec/lib/puppet_spec/pops.rb
new file mode 100755
index 00000000..e056a52b
--- /dev/null
+++ b/spec/lib/puppet_spec/pops.rb
@@ -0,0 +1,17 @@
+#! /usr/bin/env ruby -S rspec
+module PuppetSpec::Pops
+ extend RSpec::Matchers::DSL
+
+ # Checks if an Acceptor has a specific issue in its list of diagnostics
+ matcher :have_issue do |expected|
+ match do |actual|
+ actual.diagnostics.index { |i| i.issue == expected } != nil
+ end
+ failure_message_for_should do |actual|
+ "expected Acceptor[#{actual.diagnostics.collect { |i| i.issue.issue_code }.join(',')}] to contain issue #{expected.issue_code}"
+ end
+ failure_message_for_should_not do |actual|
+ "expected Acceptor[#{actual.diagnostics.collect { |i| i.issue.issue_code }.join(',')}] to not contain issue #{expected.issue_code}"
+ end
+ end
+end