enviro 0.0.4 → 0.0.5

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.
@@ -5,4 +5,4 @@ Feature: Enviro should be versioned
5
5
  So I can respond as needed
6
6
 
7
7
  Scenario: Enviro::VERSION
8
- Then "Enviro::VERSION" should be "0.0.1"
8
+ Then "Enviro::VERSION" should be "0.0.5"
@@ -0,0 +1,11 @@
1
+ class Hash
2
+ def deep_symbolize_keys
3
+ inject({}) do |hash, item|
4
+ key, value = item
5
+ new_key = key.to_sym rescue key
6
+ hash[new_key] = self[key]
7
+ hash[new_key].deep_symbolize_keys if hash[new_key].kind_of?(Hash)
8
+ hash
9
+ end
10
+ end
11
+ end
@@ -1,4 +1,6 @@
1
1
  require 'forwardable'
2
+ require 'ostruct'
3
+ require 'core_ext/hash'
2
4
 
3
5
  module Enviro
4
6
  autoload :Environment, 'enviro/environment'
@@ -11,7 +11,7 @@ module Enviro
11
11
  module ClassMethods
12
12
 
13
13
  def configuration_path_env(value=nil)
14
- @_configuration_path_env ||= 'ENVY_CONF_PATH'
14
+ @_configuration_path_env ||= 'ENVIRO_CONF_PATH'
15
15
  @_configuration_path_env = value.to_s.upcase unless value.nil?
16
16
  @_configuration_path_env
17
17
  end
@@ -38,12 +38,12 @@ module Enviro
38
38
  raise FileNotFound.new(self.configuration_path) unless
39
39
  File.exists?(self.configuration_path)
40
40
 
41
- @raw_configuration = YAML.load_file(self.configuration_path)
41
+ @raw_configuration = YAML.load_file(self.configuration_path).deep_symbolize_keys
42
42
 
43
43
  raise UnknownEnvironment.new(self.environment) unless
44
44
  @raw_configuration.key?(self.environment)
45
45
 
46
- OpenStruct.new(@raw_configuration[self.environment].merge(:environment => self.environment))
46
+ ::OpenStruct.new(@raw_configuration[self.environment].merge(:environment => self.environment))
47
47
  end
48
48
 
49
49
  end
@@ -23,9 +23,9 @@ module Enviro
23
23
 
24
24
  def _setup_environment
25
25
  if defined?(Rails)
26
- Rails.env
26
+ Rails.env.to_sym
27
27
  else
28
- ENV['ENVY_ENV'].nil? ? :development : ENV['ENVY_ENV'].to_sym
28
+ ENV['ENVIRO_ENV'].nil? ? :development : ENV['ENVIRO_ENV'].to_sym
29
29
  end
30
30
  end
31
31
 
@@ -16,7 +16,7 @@ module Enviro
16
16
  module ClassMethods
17
17
 
18
18
  def logger_dir_env(value=nil)
19
- @_logger_dir_env ||= 'ENVY_LOG_DIR'
19
+ @_logger_dir_env ||= 'ENVIRO_LOG_DIR'
20
20
  @_logger_dir_env = value.to_s.upcase unless value.nil?
21
21
  @_logger_dir_env
22
22
  end
@@ -1,3 +1,3 @@
1
1
  module Enviro
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
@@ -4,7 +4,7 @@ describe Enviro::Configuration do
4
4
  context "with standard environment variable" do
5
5
  before(:each) do
6
6
  Object.send(:remove_const, :TestEnviroConfiguration) if defined?(TestEnviroConfiguration)
7
- ENV['ENVY_CONF_PATH'] = '/tmp/enviro.yml'
7
+ ENV['ENVIRO_CONF_PATH'] = '/tmp/enviro.yml'
8
8
  class TestEnviroConfiguration
9
9
  include Enviro::Environment
10
10
  include Enviro::Configuration
@@ -17,7 +17,7 @@ describe Enviro::Configuration do
17
17
  :production => {
18
18
  },
19
19
  }
20
- File.open(ENV['ENVY_CONF_PATH'], 'w') do |f|
20
+ File.open(ENV['ENVIRO_CONF_PATH'], 'w') do |f|
21
21
  f.write(YAML.dump(config))
22
22
  end
23
23
  end
@@ -31,14 +31,14 @@ describe Enviro::Configuration do
31
31
  end
32
32
 
33
33
  it "should raise when configuration file is not found" do
34
- ENV['ENVY_CONF_PATH'] = 'who_the_heck_knows'
34
+ ENV['ENVIRO_CONF_PATH'] = 'who_the_heck_knows'
35
35
  expect {
36
36
  TestEnviroConfiguration.configuration
37
37
  }.should raise_error(Enviro::Configuration::FileNotFound)
38
38
  end
39
39
 
40
40
  it "should raise when configuration for current environment is not found" do
41
- ENV['ENVY_ENV'] = 'who_the_heck_knows'
41
+ ENV['ENVIRO_ENV'] = 'who_the_heck_knows'
42
42
  expect {
43
43
  TestEnviroConfiguration.configuration.environment
44
44
  }.should raise_error(Enviro::Configuration::UnknownEnvironment)
@@ -82,7 +82,7 @@ describe Enviro::Configuration do
82
82
  before(:each) do
83
83
  Object.send(:remove_const, :TestEnviroConfiguration) if defined?(TestEnviroConfiguration)
84
84
  ENV['CUSTOM_PATH'] = '/tmp/enviro_custom.yml'
85
- ENV['ENVY_ENV'] = nil
85
+ ENV['ENVIRO_ENV'] = nil
86
86
 
87
87
  $custom_str_path = '/tmp/enviro_custom_str.yml'
88
88
 
@@ -114,7 +114,7 @@ describe Enviro::Configuration do
114
114
  end
115
115
 
116
116
  it "should raise when configuration for current environment is not found" do
117
- ENV['ENVY_ENV'] = 'who_the_heck_knows'
117
+ ENV['ENVIRO_ENV'] = 'who_the_heck_knows'
118
118
  expect {
119
119
  TestEnviroConfiguration.configuration.environment
120
120
  }.should raise_error(Enviro::Configuration::UnknownEnvironment)
@@ -9,32 +9,32 @@ describe Enviro::Environment do
9
9
  end
10
10
 
11
11
  it "should have the environment attribute set the default when no session ENV setting is set" do
12
- ENV['ENVY_ENV'] = nil
13
- ENV['ENVY_ENV'].should be_nil
12
+ ENV['ENVIRO_ENV'] = nil
13
+ ENV['ENVIRO_ENV'].should be_nil
14
14
  TestEnviroEnvironment.environment.should == :development
15
15
  end
16
16
 
17
17
  it "should have the environment attribute set the same as the session ENV setting" do
18
- ENV['ENVY_ENV'] = 'production'
19
- ENV['ENVY_ENV'].should == "production"
18
+ ENV['ENVIRO_ENV'] = 'production'
19
+ ENV['ENVIRO_ENV'].should == "production"
20
20
  TestEnviroEnvironment.environment.should == :production
21
21
  end
22
22
 
23
23
  it "should alias env to environment" do
24
- ENV['ENVY_ENV'] = nil
25
- ENV['ENVY_ENV'].should be_nil
24
+ ENV['ENVIRO_ENV'] = nil
25
+ ENV['ENVIRO_ENV'].should be_nil
26
26
  TestEnviroEnvironment.env.should == :development
27
27
  end
28
28
 
29
29
  it "should return true on env?(value) when value is environment" do
30
- ENV['ENVY_ENV'] = nil
31
- ENV['ENVY_ENV'].should be_nil
30
+ ENV['ENVIRO_ENV'] = nil
31
+ ENV['ENVIRO_ENV'].should be_nil
32
32
  TestEnviroEnvironment.env?('development').should be_true
33
33
  end
34
34
 
35
35
  it "should return false on env?(value) when value is not environment" do
36
- ENV['ENVY_ENV'] = nil
37
- ENV['ENVY_ENV'].should be_nil
36
+ ENV['ENVIRO_ENV'] = nil
37
+ ENV['ENVIRO_ENV'].should be_nil
38
38
  TestEnviroEnvironment.env?('production').should be_false
39
39
  end
40
40
 
@@ -52,8 +52,8 @@ describe Enviro::Environment do
52
52
  end
53
53
 
54
54
  it "should inherit the environment from Rails should it be loaded" do
55
- ENV['ENVY_ENV'] = nil
56
- ENV['ENVY_ENV'].should be_nil
55
+ ENV['ENVIRO_ENV'] = nil
56
+ ENV['ENVIRO_ENV'].should be_nil
57
57
  TestEnviroEnvironment.environment.should == :production
58
58
  end
59
59
  end
@@ -8,21 +8,21 @@ describe Enviro::Logger do
8
8
  include Enviro::Environment
9
9
  include Enviro::Logger
10
10
  end
11
- ENV['ENVY_LOG_DIR'] = nil
12
- ENV['ENVY_CONF_PATH'] = nil
13
- ENV['ENVY_ENV'] = nil
11
+ ENV['ENVIRO_LOG_DIR'] = nil
12
+ ENV['ENVIRO_CONF_PATH'] = nil
13
+ ENV['ENVIRO_ENV'] = nil
14
14
  end
15
15
 
16
16
  it "should have logger like object available" do
17
17
  TestEnviroLogger.logger.should respond_to(:debug)
18
18
  end
19
19
 
20
- it "should log to STDOUT if ENVY_LOG_DIR is nil" do
20
+ it "should log to STDOUT if ENVIRO_LOG_DIR is nil" do
21
21
  TestEnviroLogger.logger.instance_variable_get(:@logdev).dev.should be(STDOUT)
22
22
  end
23
23
 
24
- it "should log to /tmp/development.log if ENVY_LOG_DIR is /tmp and ENVY_ENV is development" do
25
- ENV['ENVY_LOG_DIR'] = '/tmp'
24
+ it "should log to /tmp/development.log if ENVIRO_LOG_DIR is /tmp and ENVIRO_ENV is development" do
25
+ ENV['ENVIRO_LOG_DIR'] = '/tmp'
26
26
  TestEnviroLogger.logger.instance_variable_get(:@logdev).dev.path.should == '/tmp/development.log'
27
27
  end
28
28
 
@@ -33,7 +33,7 @@ describe Enviro::Logger do
33
33
  end
34
34
 
35
35
  it "should raise when log file is not writable" do
36
- ENV['ENVY_LOG_DIR'] = '/tmp/this_dir_is_not_here'
36
+ ENV['ENVIRO_LOG_DIR'] = '/tmp/this_dir_is_not_here'
37
37
  expect {
38
38
  TestEnviroLogger.logger
39
39
  }.should raise_error(Enviro::Logger::DirectoryNotFound)
@@ -53,10 +53,10 @@ describe Enviro::Logger do
53
53
  end
54
54
 
55
55
  it "should inherit the logger from Rails should it be loaded" do
56
- # if we set the log dir to something that doesn't exist
56
+ # if we set the log dir to something that doesn't exist
57
57
  # we can more sure that the Rails.logger is getting used
58
58
  # since otherwise we would raise an error due to the missing dir
59
- ENV['ENVY_LOG_DIR'] = '/tmp/this_should_not_exits'
59
+ ENV['ENVIRO_LOG_DIR'] = '/tmp/this_should_not_exits'
60
60
  TestEnviroLogger.logger.instance_variable_get(:@logdev).dev.should == Rails.logger.instance_variable_get(:@logdev).dev
61
61
  end
62
62
  end
@@ -70,9 +70,9 @@ describe Enviro::Logger do
70
70
  include Enviro::Logger
71
71
  logger_dir_env :custom_log
72
72
  end
73
- ENV['ENVY_LOG_DIR'] = nil
74
- ENV['ENVY_CONF_PATH'] = nil
75
- ENV['ENVY_ENV'] = nil
73
+ ENV['ENVIRO_LOG_DIR'] = nil
74
+ ENV['ENVIRO_CONF_PATH'] = nil
75
+ ENV['ENVIRO_ENV'] = nil
76
76
  end
77
77
 
78
78
  it "should upcase the logger_dir_env attribute" do
@@ -1,7 +1,7 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Enviro::VERSION do
4
- it "should be 0.0.4" do
5
- Enviro::VERSION.should == '0.0.4'
4
+ it "should be 0.0.5" do
5
+ Enviro::VERSION.should == '0.0.5'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,91 +1,94 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: enviro
3
- version: !ruby/object:Gem::Version
4
- version: 0.0.4
3
+ version: !ruby/object:Gem::Version
5
4
  prerelease:
5
+ version: 0.0.5
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Bram Swenson
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-03-04 00:00:00.000000000 -06:00
12
+
13
+ date: 2011-06-18 00:00:00 -07:00
13
14
  default_executable:
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
16
17
  name: cucumber
17
- requirement: &19642440 !ruby/object:Gem::Requirement
18
+ prerelease: false
19
+ requirement: &id001 !ruby/object:Gem::Requirement
18
20
  none: false
19
- requirements:
20
- - - ! '>='
21
- - !ruby/object:Gem::Version
22
- version: '0'
21
+ requirements:
22
+ - - ">="
23
+ - !ruby/object:Gem::Version
24
+ version: "0"
23
25
  type: :development
24
- prerelease: false
25
- version_requirements: *19642440
26
- - !ruby/object:Gem::Dependency
26
+ version_requirements: *id001
27
+ - !ruby/object:Gem::Dependency
27
28
  name: rspec
28
- requirement: &19642020 !ruby/object:Gem::Requirement
29
+ prerelease: false
30
+ requirement: &id002 !ruby/object:Gem::Requirement
29
31
  none: false
30
- requirements:
31
- - - ! '>='
32
- - !ruby/object:Gem::Version
33
- version: '0'
32
+ requirements:
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
35
+ version: "0"
34
36
  type: :development
35
- prerelease: false
36
- version_requirements: *19642020
37
- - !ruby/object:Gem::Dependency
37
+ version_requirements: *id002
38
+ - !ruby/object:Gem::Dependency
38
39
  name: autotest-standalone
39
- requirement: &19641600 !ruby/object:Gem::Requirement
40
+ prerelease: false
41
+ requirement: &id003 !ruby/object:Gem::Requirement
40
42
  none: false
41
- requirements:
42
- - - ! '>='
43
- - !ruby/object:Gem::Version
44
- version: '0'
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: "0"
45
47
  type: :development
46
- prerelease: false
47
- version_requirements: *19641600
48
- - !ruby/object:Gem::Dependency
48
+ version_requirements: *id003
49
+ - !ruby/object:Gem::Dependency
49
50
  name: autotest-growl
50
- requirement: &19641180 !ruby/object:Gem::Requirement
51
+ prerelease: false
52
+ requirement: &id004 !ruby/object:Gem::Requirement
51
53
  none: false
52
- requirements:
53
- - - ! '>='
54
- - !ruby/object:Gem::Version
55
- version: '0'
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: "0"
56
58
  type: :development
57
- prerelease: false
58
- version_requirements: *19641180
59
- - !ruby/object:Gem::Dependency
59
+ version_requirements: *id004
60
+ - !ruby/object:Gem::Dependency
60
61
  name: simplecov
61
- requirement: &19640760 !ruby/object:Gem::Requirement
62
+ prerelease: false
63
+ requirement: &id005 !ruby/object:Gem::Requirement
62
64
  none: false
63
- requirements:
64
- - - ! '>='
65
- - !ruby/object:Gem::Version
66
- version: '0'
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: "0"
67
69
  type: :development
68
- prerelease: false
69
- version_requirements: *19640760
70
- - !ruby/object:Gem::Dependency
70
+ version_requirements: *id005
71
+ - !ruby/object:Gem::Dependency
71
72
  name: ruby-debug19
72
- requirement: &19640340 !ruby/object:Gem::Requirement
73
+ prerelease: false
74
+ requirement: &id006 !ruby/object:Gem::Requirement
73
75
  none: false
74
- requirements:
75
- - - ! '>='
76
- - !ruby/object:Gem::Version
77
- version: '0'
76
+ requirements:
77
+ - - ">="
78
+ - !ruby/object:Gem::Version
79
+ version: "0"
78
80
  type: :development
79
- prerelease: false
80
- version_requirements: *19640340
81
- description: ! ' Add rails like application wide environment configuration, logging
82
- and more. '
83
- email:
81
+ version_requirements: *id006
82
+ description: " Add rails like application wide environment configuration, logging and more. "
83
+ email:
84
84
  - bram@craniumisajar.com
85
85
  executables: []
86
+
86
87
  extensions: []
88
+
87
89
  extra_rdoc_files: []
88
- files:
90
+
91
+ files:
89
92
  - .gitignore
90
93
  - .rspec
91
94
  - .rvmrc
@@ -98,6 +101,7 @@ files:
98
101
  - features/step_definitions/.initialize_steps.rb.swp
99
102
  - features/step_definitions/version_steps.rb
100
103
  - features/support/env.rb
104
+ - lib/core_ext/hash.rb
101
105
  - lib/enviro.rb
102
106
  - lib/enviro/configuration.rb
103
107
  - lib/enviro/environate.rb
@@ -114,28 +118,41 @@ files:
114
118
  - tasks/default.rake
115
119
  - tasks/rspec.rake
116
120
  has_rdoc: true
117
- homepage: ''
121
+ homepage: ""
118
122
  licenses: []
123
+
119
124
  post_install_message:
120
125
  rdoc_options: []
121
- require_paths:
126
+
127
+ require_paths:
122
128
  - lib
123
- required_ruby_version: !ruby/object:Gem::Requirement
129
+ required_ruby_version: !ruby/object:Gem::Requirement
124
130
  none: false
125
- requirements:
126
- - - ! '>='
127
- - !ruby/object:Gem::Version
128
- version: '0'
129
- required_rubygems_version: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ version: "0"
135
+ required_rubygems_version: !ruby/object:Gem::Requirement
130
136
  none: false
131
- requirements:
132
- - - ! '>='
133
- - !ruby/object:Gem::Version
134
- version: '0'
137
+ requirements:
138
+ - - ">="
139
+ - !ruby/object:Gem::Version
140
+ version: "0"
135
141
  requirements: []
142
+
136
143
  rubyforge_project: enviro
137
- rubygems_version: 1.5.3
144
+ rubygems_version: 1.6.1
138
145
  signing_key:
139
146
  specification_version: 3
140
147
  summary: Add rails like application wide environment configuration, logging and more.
141
- test_files: []
148
+ test_files:
149
+ - features/enviro/version.feature
150
+ - features/step_definitions/.initialize_steps.rb.swp
151
+ - features/step_definitions/version_steps.rb
152
+ - features/support/env.rb
153
+ - spec/enviro/configuration_spec.rb
154
+ - spec/enviro/environate_spec.rb
155
+ - spec/enviro/environment_spec.rb
156
+ - spec/enviro/logger_spec.rb
157
+ - spec/enviro/version_spec.rb
158
+ - spec/spec_helper.rb