lbspec 0.2.5 → 0.2.6

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -73,6 +73,21 @@ You can use following chains with `#respond`.
73
73
  - Options which can be used in http or https request commands.
74
74
  - You can use `options` if you configure request commands or capture commands.
75
75
 
76
+ ## Using Logger
77
+ You can use Logger to analyze.
78
+ You can use Logger if you put codes in spec files or spec_helpers like this:
79
+
80
+ ```ruby
81
+ Lbspec::Util.log_level = Logger::WARN
82
+ ```
83
+
84
+ or
85
+
86
+ ```ruby
87
+ Lbspec::Util.logger = Logger.new('test.log')
88
+ ```
89
+
90
+ The default Logger show Logger::ERROR level on STDOUT.
76
91
 
77
92
  ## Requires
78
93
  * Users need to be able to login with ssh to the target nodes.
@@ -59,21 +59,22 @@ RSpec::Matchers.define :respond do |expect|
59
59
  end
60
60
 
61
61
  description do
62
- "respond #{@expect} #{@chain_str}"
62
+ "respond #{@expect}#{@chain_str}."
63
63
  end
64
64
 
65
65
  failure_message_for_should do |vhost|
66
- result = "expected #{vhost} to respond #{@expect}"
67
- result << result_string
66
+ result_string(vhost, @expect)
68
67
  end
69
68
 
70
69
  failure_message_for_should_not do |vhost|
71
- result = "expected #{vhost} not to respond #{@expect}"
72
- result << result_string
70
+ negative = true
71
+ result_string(vhost, @expect, negative)
73
72
  end
74
73
 
75
- def result_string
76
- result = ", but did.\n" + "requested:\n"
74
+ def result_string(vhost, expect, negative = false)
75
+ negation = negative ? ' not' : ''
76
+ result = "expected #{vhost}#{negation} to respond #{expect}"
77
+ result << ", but did#{negation}.\n" + "requested:\n"
77
78
  result << request_str.gsub(/^/, ' ')
78
79
  end
79
80
  end
@@ -71,26 +71,31 @@ RSpec::Matchers.define :transfer do |nodes|
71
71
  end
72
72
 
73
73
  failure_message_for_should do |vhost|
74
- result = "expected #{vhost} to transfer requests to"
75
- result <<
76
- result_string(nodes, @chain_str, @output_request, @output_capture)
74
+ result_string(nodes, @chain_str, @output_request, @output_capture)
77
75
  end
78
76
 
79
77
  failure_message_for_should_not do |vhost|
80
- result = "expected #{vhost} not to transfer requests to"
81
- result <<
82
- result_string(nodes, @chain_str, @output_request, @output_capture)
78
+ negative = true
79
+ result_string(nodes, @chain_str, @output_request, @output_capture,
80
+ negative)
83
81
  end
84
82
 
85
- def result_string(nodes, chain_str, request_str, capture_str)
86
- result = nodes.to_s + chain_str
87
- result << ", but did.\n" + "requested:\n"
83
+ def result_string(nodes, chain_str,
84
+ request_str, capture_str, negative = false)
85
+ negation = negative ? ' not' : ''
86
+ result = "expected #{vhost}#{negation} to transfer requests to"
87
+ result << nodes.to_s + chain_str
88
+ result << ", but did#{negation}.\n" + "requested:\n"
88
89
  result << request_str.gsub(/^/, ' ')
89
90
  result << "\ncaptured:\n"
91
+ result << result_capture
92
+ result
93
+ end
94
+
95
+ def result_capture
90
96
  @output_capture.each do |o|
91
97
  result << o[:node].gsub(/^/, ' ') + "\n"
92
98
  result << o[:output].gsub(/^/, ' ') + "\n"
93
99
  end
94
- result
95
100
  end
96
101
  end
data/lib/lbspec/util.rb CHANGED
@@ -3,6 +3,20 @@
3
3
  module Lbspec
4
4
  # Lbspec::Util provides some utilities
5
5
  class Util
6
+ class << self
7
+ @logger = nil
8
+ @log_level = Logger::ERROR
9
+ attr_accessor :logger, :log_level
10
+ end
11
+
12
+ def self.log
13
+ unless logger
14
+ logger = Logger.new(STDOUT)
15
+ logger.level = log_level
16
+ end
17
+ logger
18
+ end
19
+
6
20
  def self.add_string(target, addition)
7
21
  if target.nil?
8
22
  target = addition
@@ -27,7 +41,7 @@ module Lbspec
27
41
  def self.exec_command(command, node = nil)
28
42
  output = command + "\n"
29
43
  if node
30
- options = { config: true, verbose: Logger::WARN }
44
+ options = { config: true, verbose: log_level }
31
45
  Net::SSH.start(node, ssh_user(node), options) do |ssh|
32
46
  output << ssh.exec!(command).to_s
33
47
  end
@@ -1,5 +1,5 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  # Lbspec is an RSpec plugin for easy Loadbalancer testing.
3
3
  module Lbspec
4
- VERSION = '0.2.5'
4
+ VERSION = '0.2.6'
5
5
  end
@@ -0,0 +1,21 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require 'spec_helper'
3
+ require 'net/ssh'
4
+ require 'logger'
5
+
6
+ describe Lbspec::Util do
7
+ describe '#logger' do
8
+ it 'should set/get logger' do
9
+ Lbspec::Util.logger = 'test'
10
+ Lbspec::Util.logger.should eql('test')
11
+ end
12
+ end
13
+ describe '#log' do
14
+ before :each do
15
+ Lbspec::Util.logger = nil
16
+ end
17
+ it 'should return Logger instance' do
18
+ Lbspec::Util.log.should be_instance_of(Logger)
19
+ end
20
+ end
21
+ end
metadata CHANGED
@@ -1,18 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lbspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - OTA Hiroshi
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-04-12 00:00:00.000000000 Z
12
+ date: 2014-04-22 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: bundler
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ~>
18
20
  - !ruby/object:Gem::Version
@@ -20,6 +22,7 @@ dependencies:
20
22
  type: :development
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
27
  - - ~>
25
28
  - !ruby/object:Gem::Version
@@ -27,6 +30,7 @@ dependencies:
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: rake
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
35
  - - ~>
32
36
  - !ruby/object:Gem::Version
@@ -34,6 +38,7 @@ dependencies:
34
38
  type: :development
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
43
  - - ~>
39
44
  - !ruby/object:Gem::Version
@@ -41,6 +46,7 @@ dependencies:
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: rubocop
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
51
  - - ~>
46
52
  - !ruby/object:Gem::Version
@@ -48,6 +54,7 @@ dependencies:
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
59
  - - ~>
53
60
  - !ruby/object:Gem::Version
@@ -55,6 +62,7 @@ dependencies:
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: coveralls
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
67
  - - ~>
60
68
  - !ruby/object:Gem::Version
@@ -62,6 +70,7 @@ dependencies:
62
70
  type: :development
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
75
  - - ~>
67
76
  - !ruby/object:Gem::Version
@@ -69,6 +78,7 @@ dependencies:
69
78
  - !ruby/object:Gem::Dependency
70
79
  name: debugger
71
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
72
82
  requirements:
73
83
  - - ~>
74
84
  - !ruby/object:Gem::Version
@@ -76,6 +86,7 @@ dependencies:
76
86
  type: :development
77
87
  prerelease: false
78
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
79
90
  requirements:
80
91
  - - ~>
81
92
  - !ruby/object:Gem::Version
@@ -83,6 +94,7 @@ dependencies:
83
94
  - !ruby/object:Gem::Dependency
84
95
  name: highline
85
96
  requirement: !ruby/object:Gem::Requirement
97
+ none: false
86
98
  requirements:
87
99
  - - ~>
88
100
  - !ruby/object:Gem::Version
@@ -90,6 +102,7 @@ dependencies:
90
102
  type: :development
91
103
  prerelease: false
92
104
  version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
93
106
  requirements:
94
107
  - - ~>
95
108
  - !ruby/object:Gem::Version
@@ -97,6 +110,7 @@ dependencies:
97
110
  - !ruby/object:Gem::Dependency
98
111
  name: rspec
99
112
  requirement: !ruby/object:Gem::Requirement
113
+ none: false
100
114
  requirements:
101
115
  - - ~>
102
116
  - !ruby/object:Gem::Version
@@ -104,6 +118,7 @@ dependencies:
104
118
  type: :runtime
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
107
122
  requirements:
108
123
  - - ~>
109
124
  - !ruby/object:Gem::Version
@@ -111,6 +126,7 @@ dependencies:
111
126
  - !ruby/object:Gem::Dependency
112
127
  name: net-ssh
113
128
  requirement: !ruby/object:Gem::Requirement
129
+ none: false
114
130
  requirements:
115
131
  - - ~>
116
132
  - !ruby/object:Gem::Version
@@ -118,6 +134,7 @@ dependencies:
118
134
  type: :runtime
119
135
  prerelease: false
120
136
  version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
121
138
  requirements:
122
139
  - - ~>
123
140
  - !ruby/object:Gem::Version
@@ -155,33 +172,42 @@ files:
155
172
  - spec/lbspec_respond_spec.rb
156
173
  - spec/lbspec_spec.rb
157
174
  - spec/lbspec_transfer_spec.rb
175
+ - spec/lbspec_util_spec.rb
158
176
  - spec/spec_helper.rb
159
177
  homepage: https://github.com/otahi/lbspec
160
178
  licenses:
161
179
  - MIT
162
- metadata: {}
163
180
  post_install_message:
164
181
  rdoc_options: []
165
182
  require_paths:
166
183
  - lib
167
184
  required_ruby_version: !ruby/object:Gem::Requirement
185
+ none: false
168
186
  requirements:
169
- - - '>='
187
+ - - ! '>='
170
188
  - !ruby/object:Gem::Version
171
189
  version: '0'
190
+ segments:
191
+ - 0
192
+ hash: -1965399059659681873
172
193
  required_rubygems_version: !ruby/object:Gem::Requirement
194
+ none: false
173
195
  requirements:
174
- - - '>='
196
+ - - ! '>='
175
197
  - !ruby/object:Gem::Version
176
198
  version: '0'
199
+ segments:
200
+ - 0
201
+ hash: -1965399059659681873
177
202
  requirements: []
178
203
  rubyforge_project:
179
- rubygems_version: 2.2.2
204
+ rubygems_version: 1.8.21
180
205
  signing_key:
181
- specification_version: 4
206
+ specification_version: 3
182
207
  summary: Easily test your Loadbalancers with RSpec.
183
208
  test_files:
184
209
  - spec/lbspec_respond_spec.rb
185
210
  - spec/lbspec_spec.rb
186
211
  - spec/lbspec_transfer_spec.rb
212
+ - spec/lbspec_util_spec.rb
187
213
  - spec/spec_helper.rb
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 93f355e3671d56ec229d2ad4e814dd8cd7d98d8e
4
- data.tar.gz: 8a45b859a64813cc73b9a96deae90ec0a158f517
5
- SHA512:
6
- metadata.gz: aa0a866e698ee4262b61ea5058f7679e86cb87b3cb8973a8ed1f4247b023352dff602d829b32a5c79946257cfb32648bc3aa5d648f68794236ca31bdd6459668
7
- data.tar.gz: 87df8bf8bcb595cc928235f704d04f88d9a41ed904eeb5398bb1d2e7104e02ca8b02fa15d95e53d8e5cb23c81d8e55d641043c0a19e0c215ad0486a2869c2539