mediashelf-loggable 0.4.3 → 0.4.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.
data/Gemfile CHANGED
@@ -1,6 +1,5 @@
1
1
  source "http://rubygems.org"
2
2
 
3
-
4
3
  group :development, :test do
5
4
  gem "jeweler"
6
5
  gem "mocha"
@@ -12,3 +11,4 @@ group :development, :test do
12
11
  gem "ruby-debug"
13
12
  end
14
13
 
14
+ gemspec
@@ -13,6 +13,7 @@ GEM
13
13
  json_pure (1.4.6)
14
14
  linecache (0.46)
15
15
  rbx-require-relative (> 0.0.4)
16
+ logger (1.2.8)
16
17
  mocha (0.9.9)
17
18
  rake
18
19
  rake (0.8.7)
@@ -35,6 +36,7 @@ DEPENDENCIES
35
36
  RedCloth
36
37
  jeweler
37
38
  jnunemaker-matchy
39
+ logger
38
40
  mocha
39
41
  rcov
40
42
  ruby-debug
@@ -1,3 +1,7 @@
1
+ 0.4.3
2
+
3
+ Don't use this version. It will raise "stack trace too deep" errors in some cases
4
+
1
5
  0.4.2
2
6
 
3
7
  Fixed bug in the line that checks for ::Rails.logger
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.3
1
+ 0.4.5
@@ -18,11 +18,18 @@ module Loggable
18
18
  # If ::Rails.logger is defined, that will be returned.
19
19
  # If no logger has been defined, a new STDOUT Logger will be created.
20
20
  def logger
21
- if (defined?(::Rails) && !::Rails.logger.nil?)
22
- @@logger = ::Rails.logger
23
- else
24
- @@logger ||= ::Logger.new(STDOUT)
21
+
22
+ if defined?(::Rails) && Rails.respond_to?(:version)
23
+ if Rails.version >= "3.0" && defined?(::Rails::Application) && !::Rails.logger.nil?
24
+ @@logger = ::Rails.logger
25
+ elsif defined?(RAILS_DEFAULT_LOGGER)
26
+ @@logger = RAILS_DEFAULT_LOGGER
27
+ end
25
28
  end
29
+
30
+ # If none of the above was able to set @@logger, create a new default logger
31
+ @@logger ||= ::Logger.new(STDOUT)
32
+
26
33
  return @@logger
27
34
  end
28
35
 
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{mediashelf-loggable}
8
- s.version = "0.4.3"
8
+ s.version = "0.4.5"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Patrick Reagan", "Matt Zumwalt"]
12
- s.date = %q{2011-07-25}
11
+ s.authors = [%q{Patrick Reagan}, %q{Matt Zumwalt}]
12
+ s.date = %q{2011-07-28}
13
13
  s.description = %q{A gem that provides logging capabilities to any class. Relies on Rails logger if it's available. Extended from loggable gem by viget}
14
14
  s.email = %q{matt.zumwalt@yourmediashelf.com}
15
15
  s.extra_rdoc_files = [
@@ -27,7 +27,6 @@ Gem::Specification.new do |s|
27
27
  "lib/loggable.rb",
28
28
  "lib/loggable/log_methods.rb",
29
29
  "lib/loggable/logger_stub.rb",
30
- "lib/loggable/version.rb",
31
30
  "lib/tasks/loggable.rake",
32
31
  "loggable.gemspec",
33
32
  "mediashelf-loggable.gemspec",
@@ -36,9 +35,9 @@ Gem::Specification.new do |s|
36
35
  "test/test_helper.rb"
37
36
  ]
38
37
  s.homepage = %q{http://github.com/mediashelf/mediashelf-loggable}
39
- s.rdoc_options = ["--charset=UTF-8"]
40
- s.require_paths = ["lib"]
41
- s.rubygems_version = %q{1.6.2}
38
+ s.rdoc_options = [%q{--charset=UTF-8}]
39
+ s.require_paths = [%q{lib}]
40
+ s.rubygems_version = %q{1.8.6}
42
41
  s.summary = %q{A gem that provides logging capabilities to any class}
43
42
  s.test_files = [
44
43
  "test/examples/log_methods_test.rb",
@@ -52,9 +52,63 @@ class LogMethodsTest < Test::Unit::TestCase
52
52
 
53
53
  end
54
54
 
55
- context "MyModule in Rails3" do
55
+ context "MyModule with Rails defined but not initialized" do
56
56
  setup do
57
57
  class ::Rails
58
+ end
59
+ end
60
+
61
+ teardown do
62
+ Object.send(:remove_const, :Rails)
63
+ end
64
+
65
+ should "use the default logger" do
66
+ MyModule.logger = nil
67
+ MyModule.logger.should be_kind_of(Logger)
68
+ end
69
+ end
70
+
71
+
72
+ context "MyModule in Rails2" do
73
+ setup do
74
+ class ::Rails
75
+ def self.version
76
+ return "2.8.5"
77
+ end
78
+ end
79
+ module ::ActiveSupport
80
+ class BufferedLogger
81
+ def initialize(arg)
82
+ end
83
+ end
84
+ end
85
+ Object.const_set(:RAILS_DEFAULT_LOGGER, ActiveSupport::BufferedLogger.new(STDOUT))
86
+ # ::RAILS_DEFAULT_LOGGER =
87
+ end
88
+
89
+ teardown do
90
+ Object.send(:remove_const, :Rails)
91
+ Object.send(:remove_const, :ActiveSupport)
92
+ Object.send(:remove_const, :RAILS_DEFAULT_LOGGER)
93
+ end
94
+
95
+ should "use Rails2 logger" do
96
+ MyModule.logger = nil
97
+ MyModule.logger.should == ::RAILS_DEFAULT_LOGGER
98
+ end
99
+ should "switch to using Rails2 logger even if a default logger was already defined" do
100
+ MyModule.logger = Logger.new(STDOUT)
101
+ MyModule.logger.should == ::RAILS_DEFAULT_LOGGER
102
+ end
103
+ end
104
+
105
+ context "MyModule in Rails3" do
106
+ setup do
107
+ module ::Rails
108
+ class Application;end
109
+ def self.version
110
+ return "3.0.0"
111
+ end
58
112
  def self.logger
59
113
  return "I'm a Rails Logger."
60
114
  end
@@ -65,11 +119,11 @@ class LogMethodsTest < Test::Unit::TestCase
65
119
  Object.send(:remove_const, :Rails)
66
120
  end
67
121
 
68
- should "use Rails logger" do
122
+ should "use Rails3 logger" do
69
123
  MyModule.logger = nil
70
124
  MyModule.logger.should == Rails.logger
71
125
  end
72
- should "switch to using Rails logger even if a default logger was already defined" do
126
+ should "switch to using Rails3 logger even if a default logger was already defined" do
73
127
  MyModule.logger = Logger.new(STDOUT)
74
128
  MyModule.logger.should == Rails.logger
75
129
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mediashelf-loggable
3
3
  version: !ruby/object:Gem::Version
4
- hash: 9
4
+ hash: 5
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 4
9
- - 3
10
- version: 0.4.3
9
+ - 5
10
+ version: 0.4.5
11
11
  platform: ruby
12
12
  authors:
13
13
  - Patrick Reagan
@@ -16,8 +16,7 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2011-07-25 00:00:00 -05:00
20
- default_executable:
19
+ date: 2011-07-28 00:00:00 Z
21
20
  dependencies:
22
21
  - !ruby/object:Gem::Dependency
23
22
  name: thoughtbot-shoulda
@@ -53,14 +52,12 @@ files:
53
52
  - lib/loggable.rb
54
53
  - lib/loggable/log_methods.rb
55
54
  - lib/loggable/logger_stub.rb
56
- - lib/loggable/version.rb
57
55
  - lib/tasks/loggable.rake
58
56
  - loggable.gemspec
59
57
  - mediashelf-loggable.gemspec
60
58
  - test/examples/log_methods_test.rb
61
59
  - test/examples/logger_stub_test.rb
62
60
  - test/test_helper.rb
63
- has_rdoc: true
64
61
  homepage: http://github.com/mediashelf/mediashelf-loggable
65
62
  licenses: []
66
63
 
@@ -90,7 +87,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
90
87
  requirements: []
91
88
 
92
89
  rubyforge_project:
93
- rubygems_version: 1.6.2
90
+ rubygems_version: 1.8.6
94
91
  signing_key:
95
92
  specification_version: 3
96
93
  summary: A gem that provides logging capabilities to any class
@@ -1,13 +0,0 @@
1
- module Loggable
2
- module Version
3
-
4
- MAJOR = 0
5
- MINOR = 3
6
- TINY = 0
7
-
8
- def self.to_s # :nodoc:
9
- [MAJOR, MINOR, TINY].join('.')
10
- end
11
-
12
- end
13
- end