punching_bag 0.3.6 → 0.3.7

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.
@@ -9,7 +9,7 @@ describe PunchingBag do
9
9
 
10
10
  describe '.punch' do
11
11
  it 'does nothing when the request is from a bot' do
12
- expect(PunchingBag.punch(article, bot_request)).to be_false
12
+ expect(PunchingBag.punch(article, bot_request)).to be false
13
13
  end
14
14
 
15
15
  it 'creates a new punch when the request is valid' do
@@ -30,4 +30,4 @@ describe PunchingBag do
30
30
  expect(PunchingBag.average_time(punch_1, punch_2)).to eql (time + 25.seconds)
31
31
  end
32
32
  end
33
- end
33
+ end
@@ -14,50 +14,59 @@ describe Punch do
14
14
 
15
15
  context 'with one hit' do
16
16
  its(:hits) { should eql 1 }
17
- its(:jab?) { should be_true }
18
- its(:combo?) { should be_false }
17
+ its(:jab?) { should be true }
18
+ its(:combo?) { should be false }
19
19
  end
20
20
 
21
21
  context 'with two hits' do
22
22
  let(:attrs) { {hits: 2} }
23
23
 
24
24
  its(:hits) { should eql 2 }
25
- its(:jab?) { should be_false }
26
- its(:combo?) { should be_true }
25
+ its(:jab?) { should be false }
26
+ its(:combo?) { should be true }
27
27
  end
28
28
 
29
29
  context 'with start time same as end time' do
30
30
  its(:timeframe) { should eql :second }
31
- its(:day_combo?) { should be_false }
32
- its(:month_combo?) { should be_false }
33
- its(:year_combo?) { should be_false }
31
+ its(:day_combo?) { should be false }
32
+ its(:month_combo?) { should be false }
33
+ its(:year_combo?) { should be false }
34
34
  end
35
35
 
36
36
  context 'with start time in the same day as end time' do
37
37
  let(:attrs) { {starts_at: day + 1.hour, ends_at: day + 2.hours } }
38
38
 
39
39
  its(:timeframe) { should eql :day }
40
- its(:day_combo?) { should be_true }
41
- its(:month_combo?) { should be_false }
42
- its(:year_combo?) { should be_false }
40
+ its(:day_combo?) { should be true }
41
+ its(:month_combo?) { should be false }
42
+ its(:year_combo?) { should be false }
43
43
  end
44
44
 
45
45
  context 'with start time in the same month as end time' do
46
46
  let(:attrs) { {starts_at: month + 1.day, ends_at: month + 2.days } }
47
47
 
48
48
  its(:timeframe) { should eql :month }
49
- its(:day_combo?) { should be_false }
50
- its(:month_combo?) { should be_true }
51
- its(:year_combo?) { should be_false }
49
+ its(:day_combo?) { should be false }
50
+ its(:month_combo?) { should be true }
51
+ its(:year_combo?) { should be false }
52
52
  end
53
53
 
54
54
  context 'with start time in the same year as end time' do
55
55
  let(:attrs) { {starts_at: year + 1.month, ends_at: year + 2.months } }
56
56
 
57
57
  its(:timeframe) { should eql :year }
58
- its(:day_combo?) { should be_false }
59
- its(:month_combo?) { should be_false }
60
- its(:year_combo?) { should be_true }
58
+ its(:day_combo?) { should be false }
59
+ its(:month_combo?) { should be false }
60
+ its(:year_combo?) { should be true }
61
+ end
62
+
63
+ context 'with only one punch on a day' do
64
+ let(:other_punch) { nil }
65
+ before { punch.save! }
66
+
67
+ describe '#combine_with' do
68
+ it { expect { punch.combine_with other_punch }.to_not change { Punch.count } }
69
+ end
61
70
  end
62
71
 
63
72
  context 'with another punch on the same day' do
@@ -95,4 +104,4 @@ describe Punch do
95
104
  end
96
105
  end
97
106
  end
98
- end
107
+ end
data/spec/spec_helper.rb CHANGED
@@ -8,11 +8,11 @@ Bundler.require :default
8
8
  Combustion.initialize! :active_record
9
9
 
10
10
  require 'rspec/rails'
11
- require 'rspec/autorun'
11
+ require 'rspec/its'
12
12
 
13
13
  require 'active_support/time'
14
14
  require 'ostruct'
15
15
 
16
16
  RSpec.configure do |config|
17
17
  config.use_transactional_fixtures = true
18
- end
18
+ end
metadata CHANGED
@@ -1,99 +1,119 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: punching_bag
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.6
4
+ version: 0.3.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Crownoble
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-22 00:00:00.000000000 Z
11
+ date: 2014-07-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '3.2'
20
+ - - "~>"
21
+ - !ruby/object:Gem::Version
22
+ version: '4.0'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - '>='
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '3.2'
30
+ - - "~>"
25
31
  - !ruby/object:Gem::Version
26
- version: '0'
32
+ version: '4.0'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: voight_kampff
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
- - - '>='
37
+ - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: 0.2.0
39
+ version: '0.2'
34
40
  type: :runtime
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
- - - '>='
44
+ - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: 0.2.0
46
+ version: '0.2'
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: activerecord
43
49
  requirement: !ruby/object:Gem::Requirement
44
50
  requirements:
45
- - - ~>
51
+ - - "~>"
46
52
  - !ruby/object:Gem::Version
47
- version: 4.0.0
53
+ version: '4.0'
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
51
57
  requirements:
52
- - - ~>
58
+ - - "~>"
53
59
  - !ruby/object:Gem::Version
54
- version: 4.0.0
60
+ version: '4.0'
55
61
  - !ruby/object:Gem::Dependency
56
62
  name: combustion
57
63
  requirement: !ruby/object:Gem::Requirement
58
64
  requirements:
59
- - - '>='
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '0.5'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '0.5'
75
+ - !ruby/object:Gem::Dependency
76
+ name: rspec-its
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
60
80
  - !ruby/object:Gem::Version
61
- version: '0'
81
+ version: '1.0'
62
82
  type: :development
63
83
  prerelease: false
64
84
  version_requirements: !ruby/object:Gem::Requirement
65
85
  requirements:
66
- - - '>='
86
+ - - "~>"
67
87
  - !ruby/object:Gem::Version
68
- version: '0'
88
+ version: '1.0'
69
89
  - !ruby/object:Gem::Dependency
70
90
  name: rspec-rails
71
91
  requirement: !ruby/object:Gem::Requirement
72
92
  requirements:
73
- - - '>='
93
+ - - "~>"
74
94
  - !ruby/object:Gem::Version
75
- version: '0'
95
+ version: '3.0'
76
96
  type: :development
77
97
  prerelease: false
78
98
  version_requirements: !ruby/object:Gem::Requirement
79
99
  requirements:
80
- - - '>='
100
+ - - "~>"
81
101
  - !ruby/object:Gem::Version
82
- version: '0'
102
+ version: '3.0'
83
103
  - !ruby/object:Gem::Dependency
84
104
  name: sqlite3
85
105
  requirement: !ruby/object:Gem::Requirement
86
106
  requirements:
87
- - - '>='
107
+ - - "~>"
88
108
  - !ruby/object:Gem::Version
89
- version: '0'
109
+ version: '1.3'
90
110
  type: :development
91
111
  prerelease: false
92
112
  version_requirements: !ruby/object:Gem::Requirement
93
113
  requirements:
94
- - - '>='
114
+ - - "~>"
95
115
  - !ruby/object:Gem::Version
96
- version: '0'
116
+ version: '1.3'
97
117
  description: PunchingBag is a hit counting and simple trending engine for Ruby on
98
118
  Rails
99
119
  email: adam@obledesign.com
@@ -103,23 +123,23 @@ extra_rdoc_files: []
103
123
  files:
104
124
  - MIT-LICENSE
105
125
  - app/models/punch.rb
106
- - lib/punching_bag/version.rb
107
- - lib/punching_bag/engine.rb
108
- - lib/punching_bag/acts_as_taggable_on.rb
109
- - lib/punching_bag/acts_as_punchable.rb
110
126
  - lib/generators/punching_bag/punching_bag_generator.rb
111
127
  - lib/generators/punching_bag/templates/create_punches_table.rb
112
128
  - lib/punching_bag.rb
129
+ - lib/punching_bag/acts_as_punchable.rb
130
+ - lib/punching_bag/acts_as_taggable_on.rb
131
+ - lib/punching_bag/engine.rb
132
+ - lib/punching_bag/version.rb
113
133
  - lib/tasks/punching_bag.rake
114
- - spec/spec_helper.rb
134
+ - spec/internal/app/models/article.rb
135
+ - spec/internal/config/database.yml
136
+ - spec/internal/db/combustion_test.sqlite
137
+ - spec/internal/db/schema.rb
138
+ - spec/internal/log/test.log
115
139
  - spec/lib/punching_bag_spec.rb
116
140
  - spec/models/punch_spec.rb
117
141
  - spec/models/punchable_spec.rb
118
- - spec/internal/db/schema.rb
119
- - spec/internal/db/combustion_test.sqlite
120
- - spec/internal/config/database.yml
121
- - spec/internal/app/models/article.rb
122
- - spec/internal/log/test.log
142
+ - spec/spec_helper.rb
123
143
  homepage: https://github.com/biola/punching_bag
124
144
  licenses:
125
145
  - MIT
@@ -130,17 +150,17 @@ require_paths:
130
150
  - lib
131
151
  required_ruby_version: !ruby/object:Gem::Requirement
132
152
  requirements:
133
- - - '>='
153
+ - - ">="
134
154
  - !ruby/object:Gem::Version
135
155
  version: '0'
136
156
  required_rubygems_version: !ruby/object:Gem::Requirement
137
157
  requirements:
138
- - - '>='
158
+ - - ">="
139
159
  - !ruby/object:Gem::Version
140
160
  version: '0'
141
161
  requirements: []
142
162
  rubyforge_project:
143
- rubygems_version: 2.0.3
163
+ rubygems_version: 2.2.2
144
164
  signing_key:
145
165
  specification_version: 4
146
166
  summary: PunchingBag hit conter and trending plugin
@@ -154,3 +174,4 @@ test_files:
154
174
  - spec/internal/config/database.yml
155
175
  - spec/internal/app/models/article.rb
156
176
  - spec/internal/log/test.log
177
+ has_rdoc: