Update stdlib
[mirror/dsa-puppet.git] / 3rdparty / modules / stdlib / spec / acceptance / is_ipv6_address_spec.rb
1 #! /usr/bin/env ruby -S rspec
2 require 'spec_helper_acceptance'
3
4 describe 'is_ipv6_address function' do
5   describe 'success' do
6     it 'is_ipv6_addresss' do
7       pp = <<-EOS
8       $a = "fe80:0000:cd12:d123:e2f8:47ff:fe09:dd74"
9       $b = true
10       $o = is_ipv6_address($a)
11       if $o == $b {
12         notify { 'output correct': }
13       }
14       EOS
15
16       apply_manifest(pp, :catch_failures => true) do |r|
17         expect(r.stdout).to match(/Notice: output correct/)
18       end
19     end
20     it 'is_ipv6_addresss ipv6 compressed' do
21       pp = <<-EOS
22       $a = "fe00::1"
23       $b = true
24       $o = is_ipv6_address($a)
25       if $o == $b {
26         notify { 'output correct': }
27       }
28       EOS
29
30       apply_manifest(pp, :catch_failures => true) do |r|
31         expect(r.stdout).to match(/Notice: output correct/)
32       end
33     end
34     it 'is_ipv6_addresss strings' do
35       pp = <<-EOS
36       $a = "aoeu"
37       $b = false
38       $o = is_ipv6_address($a)
39       if $o == $b {
40         notify { 'output correct': }
41       }
42       EOS
43
44       apply_manifest(pp, :catch_failures => true) do |r|
45         expect(r.stdout).to match(/Notice: output correct/)
46       end
47     end
48     it 'is_ipv6_addresss ip out of range' do
49       pp = <<-EOS
50       $a = 'fe80:0000:cd12:d123:e2f8:47ff:fe09:gggg'
51       $b = false
52       $o = is_ipv6_address($a)
53       if $o == $b {
54         notify { 'output correct': }
55       }
56       EOS
57
58       apply_manifest(pp, :catch_failures => true) do |r|
59         expect(r.stdout).to match(/Notice: output correct/)
60       end
61     end
62   end
63   describe 'failure' do
64     it 'handles improper argument counts'
65   end
66 end