rouster 0.42 → 0.53

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,98 @@
1
+ require sprintf('%s/../../../path_helper', File.dirname(File.expand_path(__FILE__)))
2
+
3
+ require 'rouster'
4
+ require 'rouster/puppet'
5
+ require 'rouster/testing'
6
+ require 'test/unit'
7
+
8
+ class TestValidatePort < Test::Unit::TestCase
9
+
10
+ def setup
11
+ # expose private methods
12
+ Rouster.send(:public, *Rouster.private_instance_methods)
13
+ Rouster.send(:public, *Rouster.protected_instance_methods)
14
+
15
+ fake_facts = { 'is_virtual' => 'true', 'timezone' => 'PDT', 'uptime_days' => 42 }
16
+
17
+ fake_ports = {
18
+ 'tcp' => {
19
+ '22' => {
20
+ :address => {
21
+ '0.0.0.0' => 'LISTEN',
22
+ '::' => 'LISTEN'
23
+ }
24
+ },
25
+ '25' => {
26
+ :address => {
27
+ '127.0.0.1' => 'LISTEN',
28
+ '::1' => 'LISTEN'
29
+ }
30
+ },
31
+ },
32
+ 'udp' => {
33
+ '161' => {
34
+ :address => {
35
+ '0.0.0.0' => 'you_might_not_get_it'
36
+ }
37
+ },
38
+ }
39
+ }
40
+
41
+ @app = Rouster.new(:name => 'app', :unittest => true)
42
+ @app.deltas[:ports] = fake_ports
43
+ @app.facts = fake_facts
44
+ end
45
+
46
+ def test_positive_basic
47
+
48
+ assert(@app.validate_port(22, { :state => 'active', :protocol => 'tcp', :address => '0.0.0.0' } ))
49
+ assert(@app.validate_port(22, { :ensure => true } ))
50
+ assert(@app.validate_port(22, { :proto => 'tcp' } ))
51
+ assert(@app.validate_port(22, { :address => '0.0.0.0' } ))
52
+
53
+ assert(@app.validate_port('22', { :ensure => true } ))
54
+
55
+ assert(@app.validate_port(161, { :state => 'absent' } ))
56
+ assert(@app.validate_port(161, { :protocol => 'udp', :address => '0.0.0.0' } ))
57
+ assert(@app.validate_port(161, { :proto => 'udp', :state => 'this_will_always_return_true' } ))
58
+
59
+ assert(@app.validate_port(1234, { :exists => false } ))
60
+ assert(@app.validate_port(1234, { :exists => 'false' } ))
61
+ assert(@app.validate_port(1234, { :ensure => false } ))
62
+ assert(@app.validate_port(1234, { :ensure => 'absent' } ))
63
+ assert(@app.validate_port(1234, { :state => 'open' } ))
64
+
65
+ end
66
+
67
+ def test_positive_constrained
68
+
69
+ assert(@app.validate_port(22, { :state => 'connected', :constrain => 'is_virtual true' } ))
70
+
71
+ end
72
+
73
+ def test_negative_basic
74
+
75
+ assert_equal(false, @app.validate_port(22, { :ensure => true, :address => '127.0.0.1' } ))
76
+
77
+ assert_equal(false, @app.validate_port(22, { :ensure => true, :proto => 'udp' } ))
78
+ assert_equal(false, @app.validate_port(22, { :ensure => true, :protocol => 'udp' } ))
79
+
80
+ assert_equal(false, @app.validate_port(22, { :ensure => 'absent' } ))
81
+ assert_equal(false, @app.validate_port(22, { :ensure => false } ))
82
+ assert_equal(false, @app.validate_port(22, { :exists => 'absent' } ))
83
+ assert_equal(false, @app.validate_port(22, { :exists => false } ))
84
+
85
+ end
86
+
87
+ def test_negative_constrained
88
+
89
+ assert(@app.validate_port(22, { :ensure => false, :constrain => 'is_virtual false' } ))
90
+ assert(@app.validate_port(22, { :ensure => true, :constrain => 'is_virtual false' } ))
91
+
92
+ end
93
+
94
+ def teardown
95
+ # noop
96
+ end
97
+
98
+ end
metadata CHANGED
@@ -1,97 +1,111 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rouster
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.42'
4
+ version: '0.53'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Conor Horan-Kates
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-05 00:00:00.000000000 Z
11
+ date: 2013-11-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: log4r
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: 1.1.9
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: 1.1.9
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: net-scp
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: net-ssh
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rake
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: test-unit
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - '>='
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: reek
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
88
102
  - !ruby/object:Gem::Version
89
103
  version: '0'
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
- - - '>='
108
+ - - ">="
95
109
  - !ruby/object:Gem::Version
96
110
  version: '0'
97
111
  description: Rouster allows you to programmatically control and interact with your
@@ -101,7 +115,7 @@ executables: []
101
115
  extensions: []
102
116
  extra_rdoc_files: []
103
117
  files:
104
- - .gitignore
118
+ - ".gitignore"
105
119
  - LICENSE
106
120
  - README.md
107
121
  - Rakefile
@@ -140,6 +154,7 @@ files:
140
154
  - test/functional/test_status.rb
141
155
  - test/functional/test_suspend.rb
142
156
  - test/functional/test_up.rb
157
+ - test/functional/test_validate_file.rb
143
158
  - test/puppet/manifests/default.pp
144
159
  - test/puppet/manifests/hiera.yaml
145
160
  - test/puppet/manifests/hieradata/common.json
@@ -158,6 +173,7 @@ files:
158
173
  - test/unit/testing/test_validate_file.rb
159
174
  - test/unit/testing/test_validate_group.rb
160
175
  - test/unit/testing/test_validate_package.rb
176
+ - test/unit/testing/test_validate_port.rb
161
177
  - test/unit/testing/test_validate_service.rb
162
178
  - test/unit/testing/test_validate_user.rb
163
179
  homepage: http://github.com/chorankates/rouster
@@ -170,12 +186,12 @@ require_paths:
170
186
  - lib
171
187
  required_ruby_version: !ruby/object:Gem::Requirement
172
188
  requirements:
173
- - - '>='
189
+ - - ">="
174
190
  - !ruby/object:Gem::Version
175
191
  version: '0'
176
192
  required_rubygems_version: !ruby/object:Gem::Requirement
177
193
  requirements:
178
- - - '>='
194
+ - - ">="
179
195
  - !ruby/object:Gem::Version
180
196
  version: 1.3.6
181
197
  requirements: []