1 #! /usr/bin/env ruby -S rspec
2 require 'spec_helper_acceptance'
4 describe 'is_domain_name function', :unless => UNSUPPORTED_PLATFORMS.include?(fact('operatingsystem')) do
6 it 'is_domain_names arrays' do
8 $a = ['aaa.com','bbb','ccc']
9 $o = is_domain_name($a)
10 notice(inline_template('is_domain_name is <%= @o.inspect %>'))
13 apply_manifest(pp, :catch_failures => true) do |r|
14 expect(r.stdout).to match(/is_domain_name is false/)
17 it 'is_domain_names true' do
20 $o = is_domain_name($a)
21 notice(inline_template('is_domain_name is <%= @o.inspect %>'))
24 apply_manifest(pp, :catch_failures => true) do |r|
25 expect(r.stdout).to match(/is_domain_name is false/)
28 it 'is_domain_names false' do
31 $o = is_domain_name($a)
32 notice(inline_template('is_domain_name is <%= @o.inspect %>'))
35 apply_manifest(pp, :catch_failures => true) do |r|
36 expect(r.stdout).to match(/is_domain_name is false/)
39 it 'is_domain_names strings with hyphens' do
41 $a = "3foo-bar.2bar-fuzz.com"
43 $o = is_domain_name($a)
45 notify { 'output correct': }
49 apply_manifest(pp, :catch_failures => true) do |r|
50 expect(r.stdout).to match(/Notice: output correct/)
53 it 'is_domain_names strings beginning with hyphens' do
55 $a = "-bar.2bar-fuzz.com"
57 $o = is_domain_name($a)
59 notify { 'output correct': }
63 apply_manifest(pp, :catch_failures => true) do |r|
64 expect(r.stdout).to match(/Notice: output correct/)
67 it 'is_domain_names hashes' do
69 $a = {'aaa'=>'www.com'}
70 $o = is_domain_name($a)
71 notice(inline_template('is_domain_name is <%= @o.inspect %>'))
74 apply_manifest(pp, :catch_failures => true) do |r|
75 expect(r.stdout).to match(/is_domain_name is false/)
80 it 'handles improper argument counts'
81 it 'handles non-arrays'