gatoroid 0.2.7 → 0.2.8
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/VERSION +1 -1
- data/gatoroid.gemspec +2 -2
- data/lib/gator/readers.rb +4 -0
- data/spec/gatoroid_spec.rb +11 -3
- data/spec/spec_helper.rb +1 -0
- metadata +14 -14
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.8
|
data/gatoroid.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "gatoroid"
|
8
|
-
s.version = "0.2.
|
8
|
+
s.version = "0.2.8"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Kevin Haight"]
|
12
|
-
s.date = "2012-06-
|
12
|
+
s.date = "2012-06-19"
|
13
13
|
s.description = "Gatoroid is a way to store analytics using the poweful features of MongoDB for scalability"
|
14
14
|
s.email = "kevinjhaight@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
data/lib/gator/readers.rb
CHANGED
@@ -22,6 +22,10 @@ module Mongoid #:nodoc:
|
|
22
22
|
def on(date,opts={})
|
23
23
|
total_for(date, DEFAULT_GRAIN,opts).to_i
|
24
24
|
end
|
25
|
+
|
26
|
+
def last(total_days = 7,opts={})
|
27
|
+
total_for((Time.zone.now - total_days.days)..Time.zone.now, DEFAULT_GRAIN, opts).to_i
|
28
|
+
end
|
25
29
|
|
26
30
|
# Range - retuns a collection for a specified range on specified level
|
27
31
|
def range(date, grain=DEFAULT_GRAIN, opts={})
|
data/spec/gatoroid_spec.rb
CHANGED
@@ -99,12 +99,16 @@ describe Mongoid::Gator do
|
|
99
99
|
@obj.visits.on(Time.now,:siteid=>100).should == 1
|
100
100
|
end
|
101
101
|
|
102
|
+
it "should give 1 for last stats" do
|
103
|
+
@obj.visits.last(7,:siteid=>100).should == 1
|
104
|
+
end
|
105
|
+
|
102
106
|
it "should have 1 record using range method for today and yesterday at day grain" do
|
103
107
|
@obj.visits.range(Time.now..Time.now + 1.day,Mongoid::Gator::Readers::DAY, :siteid=>100).should have(2).record
|
104
108
|
end
|
105
109
|
|
106
110
|
it "should have 1 record using range method for today and yesterday at hour grain" do
|
107
|
-
@obj.visits.range(Time.now.change(:hour=>0).change(:sec=>0)..Time.now.change(:hour=>0).change(:sec=>0) + 1.day,Mongoid::Gator::Readers::HOUR, :siteid=>100).should have(
|
111
|
+
@obj.visits.range(Time.now.change(:hour=>0).change(:sec=>0)..Time.now.change(:hour=>0).change(:sec=>0) + 1.day,Mongoid::Gator::Readers::HOUR, :siteid=>100).should have(24).record
|
108
112
|
end
|
109
113
|
|
110
114
|
it "should have 1 record using range method for today and yesterday at month grain" do
|
@@ -176,17 +180,21 @@ describe Mongoid::Gator do
|
|
176
180
|
it "should give 1 for using on for today stats" do
|
177
181
|
Test.visits.on(Time.now,:siteid=>200).should == 1
|
178
182
|
end
|
183
|
+
|
184
|
+
it "should give 1 for last stats" do
|
185
|
+
Test.visits.last(7,:siteid=>200).should ==1
|
186
|
+
end
|
179
187
|
|
180
188
|
it "should have 1 record using range method for today and yesterday at day grain" do
|
181
189
|
Test.visits.range(Time.now..Time.now + 1.day,Mongoid::Gator::Readers::DAY, :siteid=>200).should have(2).record
|
182
190
|
end
|
183
191
|
|
184
192
|
it "should have 1 record using range method for today and yesterday at hour grain" do
|
185
|
-
Test.visits.range(Time.now.change(:hour=>0).change(:sec=>0)..Time.now.change(:hour=>0).change(:sec=>0) + 1.day,Mongoid::Gator::Readers::HOUR, :siteid=>200).should have(
|
193
|
+
Test.visits.range(Time.now.change(:hour=>0).change(:sec=>0)..Time.now.change(:hour=>0).change(:sec=>0) + 1.day,Mongoid::Gator::Readers::HOUR, :siteid=>200).should have(24).record
|
186
194
|
end
|
187
195
|
|
188
196
|
it "should have 1 record using range method for today and yesterday at month grain" do
|
189
|
-
Test.visits.range(Time.now.change(:hour=>0).change(:sec=>0)..Time.now.change(:hour=>0).change(:sec=>0) + 1.day,Mongoid::Gator::Readers::HOUR, :siteid=>200).should have(
|
197
|
+
Test.visits.range(Time.now.change(:hour=>0).change(:sec=>0)..Time.now.change(:hour=>0).change(:sec=>0) + 1.day,Mongoid::Gator::Readers::HOUR, :siteid=>200).should have(24).record
|
190
198
|
end
|
191
199
|
|
192
200
|
it "should reset value to zero" do
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gatoroid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-06-
|
12
|
+
date: 2012-06-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: mongoid
|
16
|
-
requirement: &
|
16
|
+
requirement: &2164560300 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 2.1.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2164560300
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rake
|
27
|
-
requirement: &
|
27
|
+
requirement: &2164559480 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2164559480
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: jeweler
|
38
|
-
requirement: &
|
38
|
+
requirement: &2164558660 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2164558660
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rspec
|
49
|
-
requirement: &
|
49
|
+
requirement: &2164557780 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 2.2.0
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2164557780
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: mocha
|
60
|
-
requirement: &
|
60
|
+
requirement: &2164557060 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2164557060
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: bson_ext
|
71
|
-
requirement: &
|
71
|
+
requirement: &2164556280 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,7 +76,7 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *2164556280
|
80
80
|
description: Gatoroid is a way to store analytics using the poweful features of MongoDB
|
81
81
|
for scalability
|
82
82
|
email: kevinjhaight@gmail.com
|