logger_for_test 0.0.2 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- ZjY2OGVhMGUwNTZjOGQ4MjFmOTVmNzRiMWY4YTZmMjFmOTZhZWYwOQ==
5
- data.tar.gz: !binary |-
6
- MTk0ZWY2ZjhjMDY2NTJiZDk4ZDQ4ODI3YTg2N2VkNGY3ODY0M2E4ZQ==
2
+ SHA1:
3
+ metadata.gz: 3f8a4b45e0d4b4d1c951d5720a5c891c5983f56d
4
+ data.tar.gz: 6f091be74ddf37ebb725b85008dc8d466dc99d0b
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- OGRlZGFhYzY3YjAzN2M2ZGUyNjMyYTljOWNjYTkyMGM4YTE3YTYxYjk4YWE5
10
- MTk2NDdkZTZkY2U0MTVhMTI3NmU3ZTMxMWRjNjhjYzQyYzBjNTZkZmZjNDZh
11
- MWI0M2FlY2M1ZTc3ZDg1ZDJjYzBmMGQxZTE4NjdmOWY0OGVlMzE=
12
- data.tar.gz: !binary |-
13
- N2Y0Zjk5MzA4ZjAxY2E4Y2VlNWZiODNmYTQ0YjkzMTM4MzhiODkxYjViNTZi
14
- MGFjOGM5OWZlZTVjY2JhYWM2ODgzYmY5ODAyMWY0MmIyMjBlM2JmYTRhOTQ4
15
- ZGYxZjRiMGIwMDdmYjViMTNiYTU3OWNmZDBmYjYzMDExN2IzMTQ=
6
+ metadata.gz: 195360629b64589fed7cbc22cb4fb5ff779dc5c95a20f131a0a4c332c24df8f2d6244871cea0d32de059d94cecffc48b7312be9d63874804046ac348daca4882
7
+ data.tar.gz: 3ca98f699d886f19132e33029d8390dfe85465476b082cf744e879672f6b2666e30523da605554f1a379cada195923afdd660a5cc5747744f51151feea53ad2d
@@ -8,7 +8,7 @@ require 'delegate'
8
8
  # LoggerForTest.new(Logger.new(STDOUT))
9
9
  # LoggerForTest.new(Rails.logger))
10
10
  class LoggerForTest < SimpleDelegator
11
- VERSION = '0.0.2'
11
+ VERSION = '0.1.0'
12
12
  def initialize(*args)
13
13
  super
14
14
  @log_lines = []
@@ -16,17 +16,26 @@ class LoggerForTest < SimpleDelegator
16
16
  attr_accessor :log_lines
17
17
 
18
18
  def add(sev, message, progname = nil)
19
- log_lines << format(sev, message, progname)
19
+ log_lines << format(message, sev, progname)
20
20
  super(sev, message, progname)
21
21
  end
22
22
 
23
- def contains_log?(sev, message, progname = nil)
24
- log_lines.any? { |line| format(sev, message, progname) == line }
23
+ def contains_log?(message, sev = nil, progname = nil)
24
+ filtered_by(sev, progname).any? do |line|
25
+ line.fetch(:message) =~ Regexp.new(message)
26
+ end
25
27
  end
26
28
 
27
29
  private
28
30
 
29
- def format(sev, message, progname = nil)
31
+ def filtered_by(sev = nil, progname = nil)
32
+ log_lines.select do |line|
33
+ line[:sev] == sev || sev.nil?
34
+ line[:progname] == progname || progname.nil?
35
+ end
36
+ end
37
+
38
+ def format(message, sev = nil, progname = nil)
30
39
  { sev: sev,
31
40
  message: message,
32
41
  progname: progname }
@@ -29,12 +29,26 @@ describe LoggerForTest do
29
29
  end
30
30
  end
31
31
 
32
- describe '#has_log?' do
32
+ describe '#contains_log?' do
33
33
  it 'shall be true if the specified log line is in the logger' do
34
34
  @logger = LoggerForTest.new(NullLogger.new)
35
35
  @logger.add('error', 'something went wrong')
36
36
 
37
- @logger.has_log?('error', 'something went wrong').must_equal true
37
+ @logger.contains_log?('something went wrong', 'error').must_equal true
38
+ end
39
+
40
+ it 'shall allow the severity to be elided' do
41
+ @logger = LoggerForTest.new(NullLogger.new)
42
+ @logger.add('error', 'something went wrong')
43
+
44
+ @logger.contains_log?('something went wrong').must_equal true
45
+ end
46
+
47
+ it 'shall allow a regex to be used' do
48
+ @logger = LoggerForTest.new(NullLogger.new)
49
+ @logger.add('error', 'something went wrong')
50
+
51
+ @logger.contains_log?(/something went/).must_equal true
38
52
  end
39
53
  end
40
54
  end
metadata CHANGED
@@ -1,55 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logger_for_test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Square
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-27 00:00:00.000000000 Z
11
+ date: 2014-07-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.6'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.6'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: minitest
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '5.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '5.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '10.3'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '10.3'
55
55
  - !ruby/object:Gem::Dependency
@@ -73,8 +73,8 @@ executables: []
73
73
  extensions: []
74
74
  extra_rdoc_files: []
75
75
  files:
76
- - .gitignore
77
- - .travis.yml
76
+ - ".gitignore"
77
+ - ".travis.yml"
78
78
  - Gemfile
79
79
  - LICENSE.txt
80
80
  - README.md
@@ -93,12 +93,12 @@ require_paths:
93
93
  - lib
94
94
  required_ruby_version: !ruby/object:Gem::Requirement
95
95
  requirements:
96
- - - ! '>='
96
+ - - ">="
97
97
  - !ruby/object:Gem::Version
98
98
  version: '0'
99
99
  required_rubygems_version: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ! '>='
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  requirements: []
@@ -111,4 +111,3 @@ summary: A Ruby Logger that stores your log lines in memory.Use it in your tests
111
111
  test_files:
112
112
  - test/logger_for_test/logger_for_test_test.rb
113
113
  - test/test_helper.rb
114
- has_rdoc: