summaryrefslogtreecommitdiff
path: root/spec/acceptance/dirname_spec.rb
diff options
context:
space:
mode:
authorHunter Haugen <hunter@puppetlabs.com>2014-05-06 18:48:59 -0700
committerHunter Haugen <hunter@puppetlabs.com>2014-05-07 15:00:30 -0700
commit890ef5c471027eb164e0296d4fd172a0115319d6 (patch)
treecc788202d8b5dde0c7bbabd0117b98106a7af554 /spec/acceptance/dirname_spec.rb
parent176ff3abdc1e63de02d6d8d9cb2d70c09f7b7766 (diff)
Adding more spec coverage
Diffstat (limited to 'spec/acceptance/dirname_spec.rb')
-rw-r--r--spec/acceptance/dirname_spec.rb42
1 files changed, 42 insertions, 0 deletions
diff --git a/spec/acceptance/dirname_spec.rb b/spec/acceptance/dirname_spec.rb
new file mode 100644
index 0000000..97913dd
--- /dev/null
+++ b/spec/acceptance/dirname_spec.rb
@@ -0,0 +1,42 @@
+#! /usr/bin/env ruby -S rspec
+require 'spec_helper_acceptance'
+
+describe 'dirname function', :unless => UNSUPPORTED_PLATFORMS.include?(fact('operatingsystem')) do
+ describe 'success' do
+ context 'absolute path' do
+ it 'returns the dirname' do
+ pp = <<-EOS
+ $a = '/path/to/a/file.txt'
+ $b = '/path/to/a'
+ $o = dirname($a)
+ if $o == $b {
+ notify { 'output correct': }
+ }
+ EOS
+
+ apply_manifest(pp, :catch_failures => true) do |r|
+ expect(r.stdout).to match(/Notice: output correct/)
+ end
+ end
+ end
+ context 'relative path' do
+ it 'returns the dirname' do
+ pp = <<-EOS
+ $a = 'path/to/a/file.txt'
+ $b = 'path/to/a'
+ $o = dirname($a)
+ if $o == $b {
+ notify { 'output correct': }
+ }
+ EOS
+
+ apply_manifest(pp, :catch_failures => true) do |r|
+ expect(r.stdout).to match(/Notice: output correct/)
+ end
+ end
+ end
+ end
+ describe 'failure' do
+ it 'handles improper argument counts'
+ end
+end