legato 0.5.0 → 0.5.1
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +30 -26
- data/lib/legato/user.rb +10 -0
- data/lib/legato/version.rb +1 -1
- data/spec/lib/legato/user_spec.rb +12 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d8b3ba1c16166742956642f4a56d653a1ef29979
|
4
|
+
data.tar.gz: d78953dc68eb6334f49d88cb283ce786702ee942
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4932242d29976df1b52c3289377f2f686d3e9fe2d6f54f290217a8f55db956d2737b35b81457fb20a60a74554f3b00e59aad90728cafb3868e16b1b8128243da
|
7
|
+
data.tar.gz: 5db330c1e6397053c566adffb26c58cc145d0a536965c78a1e0b28484addbeb24c2d3396bdb4c2ad07502b5a9dab67e2cb51ca9c955b71051f9c92f871c4df1c
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
## Legato 0.5.1 ##
|
2
|
+
|
3
|
+
* `Legato::User#segments`
|
4
|
+
* `Legato::User#goals`
|
5
|
+
* README fixes to `filter` block syntax
|
6
|
+
|
7
|
+
*Yuji Yamamoto*
|
8
|
+
|
1
9
|
## Legato 0.5.0 ##
|
2
10
|
|
3
11
|
* Use Query#tracking_scope when converting `metrics`, `dimensions`, and `sort` list of parameters with `to_params`
|
data/README.md
CHANGED
@@ -26,46 +26,46 @@ If you're not able to upgrade quite yet, Garb has been maintained https://github
|
|
26
26
|
|
27
27
|
1. Get an OAuth2 Access Token from Google, Read about [OAuth2](https://github.com/tpitale/legato/wiki/OAuth2-and-Google)
|
28
28
|
|
29
|
-
```ruby
|
30
|
-
access_token = OAuth2 Access Token # from Google
|
31
|
-
```
|
29
|
+
```ruby
|
30
|
+
access_token = OAuth2 Access Token # from Google
|
31
|
+
```
|
32
32
|
|
33
33
|
2. Create a New User with the Access Token
|
34
34
|
|
35
|
-
```ruby
|
36
|
-
user = Legato::User.new(access_token)
|
37
|
-
```
|
35
|
+
```ruby
|
36
|
+
user = Legato::User.new(access_token)
|
37
|
+
```
|
38
38
|
|
39
39
|
3. List the Accounts and Profiles of the first Account
|
40
40
|
|
41
|
-
```ruby
|
42
|
-
user.accounts
|
43
|
-
user.accounts.first.profiles
|
44
|
-
```
|
41
|
+
```ruby
|
42
|
+
user.accounts
|
43
|
+
user.accounts.first.profiles
|
44
|
+
```
|
45
45
|
|
46
46
|
4. List all the Profiles the User has Access to
|
47
47
|
|
48
|
-
```ruby
|
49
|
-
user.profiles
|
50
|
-
```
|
48
|
+
```ruby
|
49
|
+
user.profiles
|
50
|
+
```
|
51
51
|
|
52
52
|
5. Get a Profile
|
53
53
|
|
54
|
-
```ruby
|
55
|
-
profile = user.profiles.first
|
56
|
-
```
|
54
|
+
```ruby
|
55
|
+
profile = user.profiles.first
|
56
|
+
```
|
57
57
|
|
58
58
|
6. The Profile Carries the User
|
59
59
|
|
60
|
-
```ruby
|
61
|
-
profile.user == user #=> true
|
62
|
-
```
|
60
|
+
```ruby
|
61
|
+
profile.user == user #=> true
|
62
|
+
```
|
63
63
|
|
64
64
|
7. The profile can also lookup its "parent" Web Property
|
65
65
|
|
66
|
-
```ruby
|
67
|
-
profile.web_property
|
68
|
-
```
|
66
|
+
```ruby
|
67
|
+
profile.web_property
|
68
|
+
```
|
69
69
|
|
70
70
|
## Google Analytics Model ##
|
71
71
|
|
@@ -103,25 +103,29 @@ Inside of any `Legato::Model` class, the method `filter` is available (like `met
|
|
103
103
|
Return entries with exits counts greater than or equal to 2000
|
104
104
|
|
105
105
|
```ruby
|
106
|
+
filter(:high_exits) {gte(:exits, 2000)}
|
107
|
+
|
108
|
+
# or ...
|
109
|
+
|
106
110
|
filter :high_exits, &lambda {gte(:exits, 2000)}
|
107
111
|
```
|
108
112
|
|
109
113
|
Return entries with pageview metric less than or equal to 200
|
110
114
|
|
111
115
|
```ruby
|
112
|
-
filter
|
116
|
+
filter(:low_pageviews) {lte(:pageviews, 200)}
|
113
117
|
```
|
114
118
|
|
115
119
|
Filters with dimensions
|
116
120
|
|
117
121
|
```ruby
|
118
|
-
filter
|
122
|
+
filter(:for_browser) {|browser| matches(:browser, browser)}
|
119
123
|
```
|
120
124
|
|
121
125
|
Filters with OR
|
122
126
|
|
123
127
|
```ruby
|
124
|
-
filter
|
128
|
+
filter(:browsers) {|*browsers| browsers.map {|browser| matches(:browser, browser)}}
|
125
129
|
```
|
126
130
|
|
127
131
|
|
@@ -162,7 +166,7 @@ Be sure to pass the appropriate number of arguments matching the lambda for your
|
|
162
166
|
For a filter defined like this:
|
163
167
|
|
164
168
|
```ruby
|
165
|
-
filter
|
169
|
+
filter(:browsers) {|*browsers| browsers.map {|browser| matches(:browser, browser)}}
|
166
170
|
```
|
167
171
|
|
168
172
|
We can use it like this, passing any number of arguments:
|
data/lib/legato/user.rb
CHANGED
@@ -47,6 +47,16 @@ module Legato
|
|
47
47
|
Management::Profile.all(self)
|
48
48
|
end
|
49
49
|
|
50
|
+
# All the `Segment` records available to this user
|
51
|
+
def segments
|
52
|
+
Management::Segment.all(self)
|
53
|
+
end
|
54
|
+
|
55
|
+
# All the `Goal` records available to this user
|
56
|
+
def goals
|
57
|
+
Management::Goal.all(self)
|
58
|
+
end
|
59
|
+
|
50
60
|
def url_for(query)
|
51
61
|
raise "invalid tracking_scope" unless tracking_scope_valid?(query.tracking_scope)
|
52
62
|
|
data/lib/legato/version.rb
CHANGED
@@ -60,5 +60,17 @@ describe Legato::User do
|
|
60
60
|
@user.profiles
|
61
61
|
Legato::Management::Profile.should have_received(:all).with(@user)
|
62
62
|
end
|
63
|
+
|
64
|
+
it 'has segments' do
|
65
|
+
Legato::Management::Segment.stubs(:all)
|
66
|
+
@user.segments
|
67
|
+
Legato::Management::Segment.should have_received(:all).with(@user)
|
68
|
+
end
|
69
|
+
|
70
|
+
it 'has goals' do
|
71
|
+
Legato::Management::Goal.stubs(:all)
|
72
|
+
@user.goals
|
73
|
+
Legato::Management::Goal.should have_received(:all).with(@user)
|
74
|
+
end
|
63
75
|
end
|
64
76
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: legato
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tony Pitale
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-06-
|
11
|
+
date: 2015-06-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|