appsent 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -17,10 +17,12 @@ describe AppSent::ConfigValue do
17
17
  let(:params) do
18
18
  [
19
19
  @params['name'],
20
- @params['type'],
21
20
  @params['value'],
22
- @params['desc'],
23
- @params['example']
21
+ {
22
+ :type => @params['type'],
23
+ :desc => @params['desc'],
24
+ :example => @params['example']
25
+ }
24
26
  ]
25
27
  end
26
28
 
@@ -31,7 +33,8 @@ describe AppSent::ConfigValue do
31
33
  end
32
34
 
33
35
  it "should raise exception if unsupported type passed" do
34
- expect { subject.new('parameter','asd','data',nil,nil) }.to raise_exception(/data type should be ruby class!/)
36
+ @params['type'] = 'asd'
37
+ expect { subject.new(*params) }.to raise_exception(/data type should be ruby class!/)
35
38
  end
36
39
 
37
40
  context "with &block given" do
@@ -64,11 +67,14 @@ describe AppSent::ConfigValue do
64
67
  context "should return false" do
65
68
 
66
69
  it "if entry does not presence in config file" do
67
- subject.new('paramname',String,nil,nil,nil).should_not be_valid
70
+ @params['value']=nil
71
+ subject.new(*params).should_not be_valid
68
72
  end
69
73
 
70
74
  it "if data in config file has wrong type" do
71
- subject.new('paramname',String,2,nil,nil).should_not be_valid
75
+ @params['type']=Array
76
+ @params['value']='string'
77
+ subject.new(*params).should_not be_valid
72
78
  end
73
79
 
74
80
  it "if child value is not valid" do
@@ -80,7 +86,7 @@ describe AppSent::ConfigValue do
80
86
  subject.new(*params,&values_block).should_not be_valid
81
87
  end
82
88
 
83
- context "with type => Array" do
89
+ context "with type => Array", :wip => true do
84
90
 
85
91
  it "if actual data is not array" do
86
92
  @params['type']=Array
@@ -117,7 +123,7 @@ describe AppSent::ConfigValue do
117
123
  subject.new(*params,&values_block).should be_valid
118
124
  end
119
125
 
120
- context "with type => Array" do
126
+ context "with type => Array", :wip => true do
121
127
 
122
128
  it "if actual data is an array of right hashes" do
123
129
  @params['type']=Array
@@ -140,42 +146,84 @@ describe AppSent::ConfigValue do
140
146
 
141
147
  context "#error_message" do
142
148
 
149
+ subject { described_class.new(*params) }
150
+
143
151
  context "should generate correct error message when no data" do
144
152
 
145
153
  it "with full description" do
146
- subject.new('database',String,nil,'Database name','localhost').error_message.should eq(" database: localhost # does not exists(Database name), String")
154
+ @params['name'] = 'database'
155
+ @params['value'] = nil
156
+ @params['type'] = String
157
+ @params['desc'] = 'Database name'
158
+ @params['example'] = 'localhost'
159
+ subject.error_message.should eq(" database: localhost # does not exists(Database name), String")
147
160
  end
148
161
 
149
162
  it "without example value" do
150
- subject.new('database',String,nil,'Database name',nil).error_message.should eq(" database: # does not exists(Database name), String")
163
+ @params['name'] = 'database'
164
+ @params['value'] = nil
165
+ @params['type'] = String
166
+ @params['desc'] = 'Database name'
167
+ @params.delete('example')
168
+ subject.error_message.should eq(" database: # does not exists(Database name), String")
151
169
  end
152
170
 
153
171
  it "without description" do
154
- subject.new('database',String,nil,nil,'localhost').error_message.should eq(" database: localhost # does not exists, String")
172
+ @params['name'] = 'database'
173
+ @params['value'] = nil
174
+ @params['type'] = String
175
+ @params.delete('desc')
176
+ @params['example'] = 'localhost'
177
+ subject.error_message.should eq(" database: localhost # does not exists, String")
155
178
  end
156
179
 
157
180
  it "without example and description" do
158
- subject.new('database',String,nil,nil,nil).error_message.should eq(" database: # does not exists, String")
181
+ @params['name'] = 'database'
182
+ @params['value'] = nil
183
+ @params['type'] = String
184
+ @params.delete('desc')
185
+ @params.delete('example')
186
+ subject.error_message.should eq(" database: # does not exists, String")
159
187
  end
160
188
 
161
189
  end
162
190
 
163
- context "should generate correct error message when no data is of wrong type" do
191
+ context "should generate correct error message when data is of wrong type" do
164
192
 
165
193
  it "with full description" do
166
- subject.new('database',String,20,'Database name','localhost').error_message.should eq(" database: 20 # wrong type,should be String(Database name)")
194
+ @params['name'] = 'database'
195
+ @params['value'] = 20
196
+ @params['type'] = String
197
+ @params['desc'] = 'Database name'
198
+ @params['example'] = 'localhost'
199
+ subject.error_message.should eq(" database: 20 # wrong type,should be String(Database name)")
167
200
  end
168
201
 
169
202
  it "without example value" do
170
- subject.new('database',String,20,'Database name',nil).error_message.should eq(" database: 20 # wrong type,should be String(Database name)")
203
+ @params['name'] = 'database'
204
+ @params['value'] = 20
205
+ @params['type'] = String
206
+ @params['desc'] = 'Database name'
207
+ @params.delete('example')
208
+ subject.error_message.should eq(" database: 20 # wrong type,should be String(Database name)")
171
209
  end
172
210
 
173
211
  it "without description" do
174
- subject.new('database',String,20,nil,'localhost').error_message.should eq(" database: 20 # wrong type,should be String")
212
+ @params['name'] = 'database'
213
+ @params['value'] = 20
214
+ @params['type'] = String
215
+ @params.delete('desc')
216
+ @params['example'] = 'localhost'
217
+ subject.error_message.should eq(" database: 20 # wrong type,should be String")
175
218
  end
176
219
 
177
220
  it "without example and description" do
178
- subject.new('database',String,20,nil,nil).error_message.should eq(" database: 20 # wrong type,should be String")
221
+ @params['name'] = 'database'
222
+ @params['value'] = 20
223
+ @params['type'] = String
224
+ @params.delete('desc')
225
+ @params.delete('example')
226
+ subject.error_message.should eq(" database: 20 # wrong type,should be String")
179
227
  end
180
228
 
181
229
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appsent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,12 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-08-02 00:00:00.000000000 +03:00
12
+ date: 2011-08-05 00:00:00.000000000 +03:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: yard
17
- requirement: &71364740 !ruby/object:Gem::Requirement
17
+ requirement: &77859100 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '0'
23
23
  type: :development
24
24
  prerelease: false
25
- version_requirements: *71364740
25
+ version_requirements: *77859100
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: BlueCloth
28
- requirement: &71363500 !ruby/object:Gem::Requirement
28
+ requirement: &77858080 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
- version_requirements: *71363500
36
+ version_requirements: *77858080
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: RedCloth
39
- requirement: &71362860 !ruby/object:Gem::Requirement
39
+ requirement: &77857690 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: '0'
45
45
  type: :development
46
46
  prerelease: false
47
- version_requirements: *71362860
47
+ version_requirements: *77857690
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: rspec
50
- requirement: &71361930 !ruby/object:Gem::Requirement
50
+ requirement: &77857220 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: 2.0.0
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *71361930
58
+ version_requirements: *77857220
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: aruba
61
- requirement: &71361640 !ruby/object:Gem::Requirement
61
+ requirement: &77856890 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ! '>='
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: '0'
67
67
  type: :development
68
68
  prerelease: false
69
- version_requirements: *71361640
69
+ version_requirements: *77856890
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: rake
72
- requirement: &71361190 !ruby/object:Gem::Requirement
72
+ requirement: &77856560 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ! '>='
@@ -77,7 +77,7 @@ dependencies:
77
77
  version: '0'
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *71361190
80
+ version_requirements: *77856560
81
81
  description: config management solution
82
82
  email:
83
83
  - kucaahbe@ukr.net
@@ -108,12 +108,15 @@ files:
108
108
  - lib/appsent/config_value.rb
109
109
  - lib/appsent/tools.rb
110
110
  - lib/appsent/version.rb
111
- - spec/dsl_spec.rb
111
+ - spec/appsent/config_file_spec.rb
112
+ - spec/appsent/config_value_spec.rb
113
+ - spec/appsent_spec.rb
112
114
  - spec/fixtures/database.yml
113
115
  - spec/fixtures/simple_config.yml
114
116
  - spec/fixtures/simple_config_with_just_type.yml
115
- - spec/internal_api/config_file_spec.rb
116
- - spec/internal_api/config_value_spec.rb
117
+ - spec/old_api/dsl_spec.rb
118
+ - spec/old_api/internal_api/config_file_spec.rb
119
+ - spec/old_api/internal_api/config_value_spec.rb
117
120
  - spec/spec_helper.rb
118
121
  - spec/tools_spec.rb
119
122
  has_rdoc: true
@@ -131,7 +134,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
131
134
  version: '0'
132
135
  segments:
133
136
  - 0
134
- hash: 299044573
137
+ hash: -225741935
135
138
  required_rubygems_version: !ruby/object:Gem::Requirement
136
139
  none: false
137
140
  requirements:
@@ -140,7 +143,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
143
  version: '0'
141
144
  segments:
142
145
  - 0
143
- hash: 299044573
146
+ hash: -225741935
144
147
  requirements: []
145
148
  rubyforge_project: appsent
146
149
  rubygems_version: 1.6.2
@@ -1,72 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe "AppSent.init" do
4
-
5
- before :each do
6
- @right_params = { :path => 'fixtures', :env => 'test' }
7
- @fixtures_path = File.expand_path(File.join(File.dirname(__FILE__),'fixtures'))
8
- end
9
-
10
- it "should require config path" do
11
- @right_params.delete(:path)
12
- expect { AppSent.init(@right_params) do; end }.to raise_exception(AppSent::ConfigPathNotSet)
13
- end
14
-
15
- it "should require environment variable" do
16
- @right_params.delete(:env)
17
- expect { AppSent.init(@right_params) do; end }.to raise_exception(AppSent::EnvironmentNotSet)
18
- end
19
-
20
- it "should require block" do
21
- expect { AppSent.init(@right_params) }.to raise_exception(AppSent::BlockRequired)
22
- end
23
-
24
- it "should save config path to @@config_path" do
25
- AppSent.init(@right_params) do; end
26
- AppSent.config_path.should eq(@fixtures_path)
27
- end
28
-
29
- it "should save environment to @@environment" do
30
- AppSent.init(@right_params) do; end
31
- AppSent.send(:class_variable_get,:@@environment).should eq('test')
32
- end
33
-
34
- it "should save array of configs to @@configs" do
35
- expect {
36
- AppSent.init(@right_params) do
37
- config1
38
- config2
39
- config3
40
- end
41
- }.to raise_exception(AppSent::Error)
42
- AppSent.config_files.should eq(%w(config1 config2 config3))
43
- end
44
-
45
- it "should create corresponding constants with values" do
46
- AppSent.init(@right_params) do
47
- simple_config
48
- database do
49
- username :type => String
50
- password :type => String
51
- port :type => Fixnum
52
- end
53
-
54
- simple_config_with_just_type :type => Array
55
- end
56
-
57
- AppSent::SIMPLE_CONFIG.should eq({:a=>1, :b=>'2'})
58
- AppSent::DATABASE.should eq({:username => 'user', :password => 'pass', :port => 100500})
59
- AppSent::SIMPLE_CONFIG_WITH_JUST_TYPE.should eq([1,2,3])
60
- end
61
-
62
- end
63
-
64
- describe 'AppSent.new' do
65
-
66
- subject { AppSent.new }
67
-
68
- %w(all_valid? load! full_error_message).each do |method|
69
- it { should respond_to(method) }
70
- end
71
-
72
- end