low 0.0.12 → 0.0.13

Sign up to get free protection for your applications and to get access to all the features.
data/.rspec ADDED
@@ -0,0 +1 @@
1
+ --color
@@ -1,3 +1,6 @@
1
+ require 'low/mongo'
2
+ require 'low/mongo/util'
3
+
1
4
  module Low
2
5
  module Mongo
3
6
  # The `Heroku` module provides helper methods for Mongo on Heroku.
@@ -1,5 +1,6 @@
1
1
  require 'uri'
2
2
  require 'mongo'
3
+ require 'low/mongo'
3
4
 
4
5
  module Low
5
6
  module Mongo
data/lib/low/mongo.rb CHANGED
@@ -4,9 +4,6 @@ module Low
4
4
  # The `Mongo` module defines an interface for a Mongo helper
5
5
  # class. It also includes two basic classes, `Local` and `Remote`.
6
6
  module Mongo
7
- autoload :Heroku, 'low/mongo/heroku'
8
- autoload :Util, 'low/mongo/util'
9
-
10
7
  # Simple access to a Mongo::Collection instance.
11
8
  def [](collection)
12
9
  db[collection]
@@ -1,7 +1,7 @@
1
1
  require 'logger'
2
2
 
3
3
  module Low
4
- module Middleware
4
+ module Rack
5
5
  class LogLevel
6
6
 
7
7
  DEFAULT_DEFAULT_LEVEL = Logger::INFO
@@ -1,5 +1,5 @@
1
1
  module Low
2
- module Middleware
2
+ module Rack
3
3
  class RackErrors
4
4
 
5
5
  DEFAULT_FS_ENVS = ['development', 'test']
@@ -1,5 +1,7 @@
1
+ require 'rack/request'
2
+
1
3
  module Low
2
- module Middleware
4
+ module Rack
3
5
  # `RequestId` adds a value for env["request_id"]. `RequestLogger`, for one,
4
6
  # uses this value to scope the logger it instantiates.
5
7
  class RequestId
@@ -20,7 +22,7 @@ module Low
20
22
 
21
23
  def call(env)
22
24
  # If there is a request_id parameter,
23
- req = Rack::Request.new(env)
25
+ req = ::Rack::Request.new(env)
24
26
 
25
27
  # and it's valid, use it;
26
28
  if req['request_id'] and RequestId.is_valid?(req['request_id'])
@@ -1,7 +1,8 @@
1
1
  require 'logger'
2
+ require 'low/scoped_logger'
2
3
 
3
4
  module Low
4
- module Middleware
5
+ module Rack
5
6
  # `RequestLogger` sets 'rack.logger' to an instance of
6
7
  # `Low::ScopedLogger`, with `#level` and `#scope` taken from env.
7
8
  class RequestLogger
@@ -1,5 +1,5 @@
1
1
  module Low
2
- module Middleware
2
+ module Rack
3
3
  # `SubdomainMap` is Rack middleware that delegates to other Rack apps based
4
4
  # upon subdomain. It takes two arguments upon initialization:
5
5
  #
data/lib/low/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Low
2
- VERSION = '0.0.12'
2
+ VERSION = '0.0.13'
3
3
  end
data/lib/low.rb CHANGED
@@ -1,14 +1,6 @@
1
+ $:.push File.dirname(__FILE__)
2
+
1
3
  require 'low/version'
2
4
 
3
5
  module Low
4
- autoload :ScopedLogger, 'low/scoped_logger'
5
- autoload :Mongo, 'low/mongo'
6
-
7
- module Middleware
8
- autoload :LogLevel, 'low/middleware/log_level'
9
- autoload :RackErrors, 'low/middleware/rack_errors'
10
- autoload :RequestId, 'low/middleware/request_id'
11
- autoload :RequestLogger, 'low/middleware/request_logger'
12
- autoload :SubdomainMap, 'low/middleware/subdomain_map'
13
- end
14
6
  end
@@ -1,4 +1,6 @@
1
1
  require File.dirname(__FILE__) + '/../../spec_helper'
2
+ require 'low/mongo'
3
+ require 'low/mongo/util'
2
4
 
3
5
  describe Low::Mongo::Util do
4
6
  describe '.extract_mongodb_uris' do
@@ -1,4 +1,5 @@
1
1
  require File.dirname(__FILE__) + '/../spec_helper'
2
+ require 'low/mongo'
2
3
 
3
4
  describe Low::Mongo do
4
5
  class MongoTest
@@ -1,7 +1,8 @@
1
1
  require File.dirname(__FILE__) + '/../../spec_helper'
2
2
  require 'logger'
3
+ require 'low/rack/log_level'
3
4
 
4
- describe Low::Middleware::LogLevel do
5
+ describe Low::Rack::LogLevel do
5
6
  def test_app
6
7
  lambda do |env|
7
8
  [200, {'Content-Type' => 'text/plain'}, env['low.log_level']]
@@ -13,49 +14,49 @@ describe Low::Middleware::LogLevel do
13
14
 
14
15
  it 'should set low.log_level to `Logger::FATAL` if LOG_LEVEL is \'FATAL\'' do
15
16
  ENV['LOG_LEVEL'] = 'FATAL'
16
- rack = Low::Middleware::LogLevel.new test_app
17
+ rack = Low::Rack::LogLevel.new test_app
17
18
  response = rack.call({})
18
19
  response[2].should == Logger::FATAL
19
20
  end
20
21
 
21
22
  it 'should set low.log_level to `Logger::ERROR` if LOG_LEVEL is \'ERROR\'' do
22
23
  ENV['LOG_LEVEL'] = 'ERROR'
23
- rack = Low::Middleware::LogLevel.new test_app
24
+ rack = Low::Rack::LogLevel.new test_app
24
25
  response = rack.call({})
25
26
  response[2].should == Logger::ERROR
26
27
  end
27
28
 
28
29
  it 'should set low.log_level to `Logger::WARN` if LOG_LEVEL is \'WARN\'' do
29
30
  ENV['LOG_LEVEL'] = 'WARN'
30
- rack = Low::Middleware::LogLevel.new test_app
31
+ rack = Low::Rack::LogLevel.new test_app
31
32
  response = rack.call({})
32
33
  response[2].should == Logger::WARN
33
34
  end
34
35
 
35
36
  it 'should set low.log_level to `Logger::INFO` if LOG_LEVEL is \'INFO\'' do
36
37
  ENV['LOG_LEVEL'] = 'INFO'
37
- rack = Low::Middleware::LogLevel.new test_app
38
+ rack = Low::Rack::LogLevel.new test_app
38
39
  response = rack.call({})
39
40
  response[2].should == Logger::INFO
40
41
  end
41
42
 
42
43
  it 'should set low.log_level to `Logger::DEBUG` if LOG_LEVEL is \'DEBUG\'' do
43
44
  ENV['LOG_LEVEL'] = 'DEBUG'
44
- rack = Low::Middleware::LogLevel.new test_app
45
+ rack = Low::Rack::LogLevel.new test_app
45
46
  response = rack.call({})
46
47
  response[2].should == Logger::DEBUG
47
48
  end
48
49
 
49
50
  it 'should set low.log_level to `Logger::INFO` if neither LOG_LEVEL nor `:default_level` is set' do
50
51
  ENV['LOG_LEVEL'] = nil
51
- rack = Low::Middleware::LogLevel.new test_app
52
+ rack = Low::Rack::LogLevel.new test_app
52
53
  response = rack.call({})
53
54
  response[2].should == Logger::INFO
54
55
  end
55
56
 
56
57
  it 'should set low.log_level to the specified `:default_level` if LOG_LEVEL is not set' do
57
58
  ENV['LOG_LEVEL'] = nil
58
- rack = Low::Middleware::LogLevel.new test_app, default_level: Logger::DEBUG
59
+ rack = Low::Rack::LogLevel.new test_app, default_level: Logger::DEBUG
59
60
  response = rack.call({})
60
61
  response[2].should == Logger::DEBUG
61
62
  end
@@ -1,7 +1,8 @@
1
1
  require File.dirname(__FILE__) + '/../../spec_helper'
2
2
  require 'fileutils'
3
+ require 'low/rack/rack_errors'
3
4
 
4
- describe Low::Middleware::RackErrors do
5
+ describe Low::Rack::RackErrors do
5
6
  def test_app
6
7
  lambda do |env|
7
8
  [200, {'Content-Type' => 'text/plain'}, env['rack.errors']]
@@ -14,28 +15,28 @@ describe Low::Middleware::RackErrors do
14
15
 
15
16
  it 'should log to the FS in the development RACK_ENV by default' do
16
17
  ENV['RACK_ENV'] = 'development'
17
- rack = Low::Middleware::RackErrors.new test_app
18
+ rack = Low::Rack::RackErrors.new test_app
18
19
  response = rack.call({})
19
20
  response[2].path.should == 'log/development.log'
20
21
  end
21
22
 
22
23
  it 'should log to the FS in the test RACK_ENV by default' do
23
24
  ENV['RACK_ENV'] = 'test'
24
- rack = Low::Middleware::RackErrors.new test_app
25
+ rack = Low::Rack::RackErrors.new test_app
25
26
  response = rack.call({})
26
27
  response[2].path.should == 'log/test.log'
27
28
  end
28
29
 
29
30
  it 'should log to the FS in the specified RACK_ENV' do
30
31
  ENV['RACK_ENV'] = 'production'
31
- rack = Low::Middleware::RackErrors.new test_app, fs_envs: ['production']
32
+ rack = Low::Rack::RackErrors.new test_app, fs_envs: ['production']
32
33
  response = rack.call({})
33
34
  response[2].path.should == 'log/production.log'
34
35
  end
35
36
 
36
37
  it 'should log to STDOUT if not in a specified RACK_ENV' do
37
38
  ENV['RACK_ENV'] = 'production'
38
- rack = Low::Middleware::RackErrors.new test_app
39
+ rack = Low::Rack::RackErrors.new test_app
39
40
  response = rack.call({})
40
41
  response[2].should == STDOUT
41
42
  end
@@ -1,12 +1,13 @@
1
1
  require File.dirname(__FILE__) + '/../../spec_helper'
2
+ require 'low/rack/request_id'
2
3
 
3
- describe Low::Middleware::RequestId do
4
+ describe Low::Rack::RequestId do
4
5
  def app
5
6
  app = lambda do |env|
6
7
  [200, {'Content-Type' => 'text/plain'}, ['Request Id: ' + env['useless.request_id']]]
7
8
  end
8
9
 
9
- Low::Middleware::RequestId.new(app)
10
+ Low::Rack::RequestId.new(app)
10
11
  end
11
12
 
12
13
  it 'should add a request ID to the env while proxying transparently' do
@@ -1,7 +1,9 @@
1
1
  require File.dirname(__FILE__) + '/../../spec_helper'
2
2
  require 'logger'
3
+ require 'low/scoped_logger'
4
+ require 'low/rack/request_logger'
3
5
 
4
- describe Low::Middleware::RequestLogger do
6
+ describe Low::Rack::RequestLogger do
5
7
  def test_app
6
8
  lambda do |env|
7
9
  [200, {'Content-Type' => 'text/plain'}, env['rack.logger']]
@@ -10,7 +12,7 @@ describe Low::Middleware::RequestLogger do
10
12
 
11
13
  it 'should set rack.logger to an instance of `Low::ScopedLogger` with scope set to \'request_id\'
12
14
  and level set to \'low.log_level\'' do
13
- rack = Low::Middleware::RequestLogger.new test_app
15
+ rack = Low::Rack::RequestLogger.new test_app
14
16
  response = rack.call({'request_id' => 'abc123', 'low.log_level' => Logger::FATAL})
15
17
  logger = response[2]
16
18
  logger.should be_a(Low::ScopedLogger)
@@ -1,6 +1,7 @@
1
1
  require File.dirname(__FILE__) + '/../../spec_helper'
2
+ require 'low/rack/subdomain_map'
2
3
 
3
- describe Low::Middleware::SubdomainMap do
4
+ describe Low::Rack::SubdomainMap do
4
5
  def map
5
6
  default_app = lambda do |env|
6
7
  [200, {'Content-Type' => 'text/plain'}, ['Default App']]
@@ -10,7 +11,7 @@ describe Low::Middleware::SubdomainMap do
10
11
  [200, {'Content-Type' => 'text/plain'}, ['API App']]
11
12
  end
12
13
 
13
- Low::Middleware::SubdomainMap.new default_app, 'subdomain' => api_app
14
+ Low::Rack::SubdomainMap.new default_app, 'subdomain' => api_app
14
15
  end
15
16
 
16
17
  it 'should call the default app if no subdomain is specified' do
@@ -1,4 +1,5 @@
1
1
  require File.dirname(__FILE__) + '/../spec_helper'
2
+ require 'low/scoped_logger'
2
3
 
3
4
  describe Low::ScopedLogger do
4
5
  describe '#fatal' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: low
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.12
4
+ version: 0.0.13
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-14 00:00:00.000000000 Z
12
+ date: 2012-10-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rack
@@ -99,30 +99,31 @@ extensions: []
99
99
  extra_rdoc_files: []
100
100
  files:
101
101
  - .gitignore
102
+ - .rspec
102
103
  - Gemfile
103
104
  - Gemfile.lock
104
105
  - LICENSE
105
106
  - README.md
106
107
  - Rakefile
107
108
  - lib/low.rb
108
- - lib/low/middleware/log_level.rb
109
- - lib/low/middleware/rack_errors.rb
110
- - lib/low/middleware/request_id.rb
111
- - lib/low/middleware/request_logger.rb
112
- - lib/low/middleware/subdomain_map.rb
113
109
  - lib/low/mongo.rb
114
110
  - lib/low/mongo/heroku.rb
115
111
  - lib/low/mongo/util.rb
112
+ - lib/low/rack/log_level.rb
113
+ - lib/low/rack/rack_errors.rb
114
+ - lib/low/rack/request_id.rb
115
+ - lib/low/rack/request_logger.rb
116
+ - lib/low/rack/subdomain_map.rb
116
117
  - lib/low/scoped_logger.rb
117
118
  - lib/low/version.rb
118
119
  - low.gemspec
119
- - spec/low/middleware/log_level_spec.rb
120
- - spec/low/middleware/rack_errors_spec.rb
121
- - spec/low/middleware/request_id_spec.rb
122
- - spec/low/middleware/request_logger_spec.rb
123
- - spec/low/middleware/subdomain_map_spec.rb
124
120
  - spec/low/mongo/util_spec.rb
125
121
  - spec/low/mongo_spec.rb
122
+ - spec/low/rack/log_level_spec.rb
123
+ - spec/low/rack/rack_errors_spec.rb
124
+ - spec/low/rack/request_id_spec.rb
125
+ - spec/low/rack/request_logger_spec.rb
126
+ - spec/low/rack/subdomain_map_spec.rb
126
127
  - spec/low/scoped_logger_spec.rb
127
128
  - spec/spec_helper.rb
128
129
  homepage: ''
@@ -150,12 +151,12 @@ signing_key:
150
151
  specification_version: 3
151
152
  summary: A low-level utility library.
152
153
  test_files:
153
- - spec/low/middleware/log_level_spec.rb
154
- - spec/low/middleware/rack_errors_spec.rb
155
- - spec/low/middleware/request_id_spec.rb
156
- - spec/low/middleware/request_logger_spec.rb
157
- - spec/low/middleware/subdomain_map_spec.rb
158
154
  - spec/low/mongo/util_spec.rb
159
155
  - spec/low/mongo_spec.rb
156
+ - spec/low/rack/log_level_spec.rb
157
+ - spec/low/rack/rack_errors_spec.rb
158
+ - spec/low/rack/request_id_spec.rb
159
+ - spec/low/rack/request_logger_spec.rb
160
+ - spec/low/rack/subdomain_map_spec.rb
160
161
  - spec/low/scoped_logger_spec.rb
161
162
  - spec/spec_helper.rb