awesm 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -14,10 +14,22 @@ In your Gemfile:
14
14
 
15
15
  And in your code:
16
16
 
17
+ # Initialize
17
18
  Awesm.subscription_key = 'sub-xxxxxx'
18
19
  Awesm.application_key = 'app-xxxxxx'
20
+
21
+ # Create a project
19
22
  project = Awesm::Project.create(:name => 'TotallyAwesm')
20
- project.api_key # => '1234567890abcdefghijklmnopqrstuvwxyz'
23
+ project.api_key # => '5c8b1a212434c2153c2f2c2f2c765a36140add243bf6eae876345f8fd11045d9'
24
+
25
+ # Create a sharing link
26
+ # (This is currently very rudimentary--only the options shown will work.)
27
+ Awesm::Url.share(:url => 'http://developers.awe.sm/',
28
+ :key => '5c8b1a212434c2153c2f2c2f2c765a36140add243bf6eae876345f8fd11045d9',
29
+ :tool => 'mKU7uN',
30
+ :channel => 'twitter',
31
+ :destination => 'http://twitter.com/intent/tweet?text=This+is+the+coolest+API+evar!%26url=AWESM_URL%26via=awesm')
32
+ # => "http://api.awe.sm/url/share?v=3&url=http://developers.awe.sm/&key=5c8b1a212434c2153c2f2c2f2c765a36140add243bf6eae876345f8fd11045d9&tool=mKU7uN&channel=twitter&destination=http://twitter.com/intent/tweet?text=This+is+the+coolest+API+evar!%26url=AWESM_URL%26via=awesm"
21
33
 
22
34
  ## Contributing ##
23
35
 
@@ -36,4 +48,4 @@ And in your code:
36
48
 
37
49
  ## Many Thanks To ##
38
50
  * our employer, Topspin Media, Inc. (http://topspinmedia.com)
39
- * and the good folks at awe.sm (http://totally.awe.sm)
51
+ * and the good folks at awe.sm (http://totally.awe.sm)
@@ -4,6 +4,7 @@ require 'hashie'
4
4
 
5
5
  require 'awesm/version'
6
6
  require 'awesm/project'
7
+ require 'awesm/url'
7
8
 
8
9
  module Awesm
9
10
  def self.subscription_key=(key)
@@ -0,0 +1,15 @@
1
+ module Awesm
2
+ class Url
3
+ def self.share(params)
4
+ if required_params_present_for_share?(params)
5
+ "http://api.awe.sm/url/share?v=3&url=#{params[:url]}&key=#{params[:key]}&tool=#{params[:tool]}&channel=#{params[:channel]}&destination=#{params[:destination]}"
6
+ end
7
+ end
8
+
9
+ def self.required_params_present_for_share?(params)
10
+ [:url, :key, :tool, :channel, :destination].all? do |param|
11
+ params.include?(param)
12
+ end
13
+ end
14
+ end
15
+ end
@@ -1,3 +1,3 @@
1
1
  module Awesm
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
@@ -17,7 +17,7 @@ describe Awesm::Project do
17
17
  "created_at" => "2011-10-25 00:43:49",
18
18
  "default_domain" => "awe.sm",
19
19
  "domains" => [],
20
- "name" => "myNewProject",
20
+ "name" => "TotallyAwesomeProject",
21
21
  "sharers" => [],
22
22
  "updated_at" => "2011-10-25 00:43:49",
23
23
  "viewers" => []
@@ -0,0 +1,19 @@
1
+ require 'spec_helper'
2
+
3
+ describe Awesm::Url do
4
+ describe '.share' do
5
+ it 'returns the correct awe.sm url' do
6
+ Awesm::Url.share(:url => 'http://developers.awe.sm/',
7
+ :key => '5c8b1a212434c2153c2f2c2f2c765a36140add243bf6eae876345f8fd11045d9',
8
+ :tool => 'mKU7uN',
9
+ :channel => 'twitter',
10
+ :destination => 'http://twitter.com/intent/tweet?text=This+is+the+coolest+API+evar!%26url=AWESM_URL%26via=awesm').
11
+ should == 'http://api.awe.sm/url/share?v=3&url=http://developers.awe.sm/&key=5c8b1a212434c2153c2f2c2f2c765a36140add243bf6eae876345f8fd11045d9&tool=mKU7uN&channel=twitter&destination=http://twitter.com/intent/tweet?text=This+is+the+coolest+API+evar!%26url=AWESM_URL%26via=awesm'
12
+ end
13
+
14
+ it 'returns nil if no options are sent in' do
15
+ Awesm::Url.share({}).should == nil
16
+ end
17
+ end
18
+ end
19
+
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awesm
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 19
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 3
10
- version: 0.1.3
9
+ - 4
10
+ version: 0.1.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Sathya Sekaran
@@ -16,11 +16,11 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2011-11-30 00:00:00 Z
19
+ date: 2011-12-07 00:00:00 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: rake
23
22
  prerelease: false
23
+ type: :development
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
@@ -30,11 +30,11 @@ dependencies:
30
30
  segments:
31
31
  - 0
32
32
  version: "0"
33
- type: :development
33
+ name: rake
34
34
  version_requirements: *id001
35
35
  - !ruby/object:Gem::Dependency
36
- name: rspec
37
36
  prerelease: false
37
+ type: :development
38
38
  requirement: &id002 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
@@ -44,11 +44,11 @@ dependencies:
44
44
  segments:
45
45
  - 0
46
46
  version: "0"
47
- type: :development
47
+ name: rspec
48
48
  version_requirements: *id002
49
49
  - !ruby/object:Gem::Dependency
50
- name: webmock
51
50
  prerelease: false
51
+ type: :development
52
52
  requirement: &id003 !ruby/object:Gem::Requirement
53
53
  none: false
54
54
  requirements:
@@ -58,11 +58,11 @@ dependencies:
58
58
  segments:
59
59
  - 0
60
60
  version: "0"
61
- type: :development
61
+ name: webmock
62
62
  version_requirements: *id003
63
63
  - !ruby/object:Gem::Dependency
64
- name: httparty
65
64
  prerelease: false
65
+ type: :development
66
66
  requirement: &id004 !ruby/object:Gem::Requirement
67
67
  none: false
68
68
  requirements:
@@ -72,11 +72,11 @@ dependencies:
72
72
  segments:
73
73
  - 0
74
74
  version: "0"
75
- type: :development
75
+ name: httparty
76
76
  version_requirements: *id004
77
77
  - !ruby/object:Gem::Dependency
78
- name: json
79
78
  prerelease: false
79
+ type: :development
80
80
  requirement: &id005 !ruby/object:Gem::Requirement
81
81
  none: false
82
82
  requirements:
@@ -86,11 +86,11 @@ dependencies:
86
86
  segments:
87
87
  - 0
88
88
  version: "0"
89
- type: :development
89
+ name: json
90
90
  version_requirements: *id005
91
91
  - !ruby/object:Gem::Dependency
92
- name: hashie
93
92
  prerelease: false
93
+ type: :development
94
94
  requirement: &id006 !ruby/object:Gem::Requirement
95
95
  none: false
96
96
  requirements:
@@ -100,11 +100,11 @@ dependencies:
100
100
  segments:
101
101
  - 0
102
102
  version: "0"
103
- type: :development
103
+ name: hashie
104
104
  version_requirements: *id006
105
105
  - !ruby/object:Gem::Dependency
106
- name: ruby-debug
107
106
  prerelease: false
107
+ type: :development
108
108
  requirement: &id007 !ruby/object:Gem::Requirement
109
109
  none: false
110
110
  requirements:
@@ -114,11 +114,11 @@ dependencies:
114
114
  segments:
115
115
  - 0
116
116
  version: "0"
117
- type: :development
117
+ name: ruby-debug
118
118
  version_requirements: *id007
119
119
  - !ruby/object:Gem::Dependency
120
- name: httparty
121
120
  prerelease: false
121
+ type: :runtime
122
122
  requirement: &id008 !ruby/object:Gem::Requirement
123
123
  none: false
124
124
  requirements:
@@ -128,11 +128,11 @@ dependencies:
128
128
  segments:
129
129
  - 0
130
130
  version: "0"
131
- type: :runtime
131
+ name: httparty
132
132
  version_requirements: *id008
133
133
  - !ruby/object:Gem::Dependency
134
- name: json
135
134
  prerelease: false
135
+ type: :runtime
136
136
  requirement: &id009 !ruby/object:Gem::Requirement
137
137
  none: false
138
138
  requirements:
@@ -142,11 +142,11 @@ dependencies:
142
142
  segments:
143
143
  - 0
144
144
  version: "0"
145
- type: :runtime
145
+ name: json
146
146
  version_requirements: *id009
147
147
  - !ruby/object:Gem::Dependency
148
- name: hashie
149
148
  prerelease: false
149
+ type: :runtime
150
150
  requirement: &id010 !ruby/object:Gem::Requirement
151
151
  none: false
152
152
  requirements:
@@ -156,7 +156,7 @@ dependencies:
156
156
  segments:
157
157
  - 0
158
158
  version: "0"
159
- type: :runtime
159
+ name: hashie
160
160
  version_requirements: *id010
161
161
  description: The 'awesm' gem is an interface for awe.sm (http://totally.awe.sm), a social link analytics tracking service.
162
162
  email:
@@ -178,8 +178,10 @@ files:
178
178
  - awesm.gemspec
179
179
  - lib/awesm.rb
180
180
  - lib/awesm/project.rb
181
+ - lib/awesm/url.rb
181
182
  - lib/awesm/version.rb
182
183
  - spec/awesm/project_spec.rb
184
+ - spec/awesm/url_spec.rb
183
185
  - spec/awesm_spec.rb
184
186
  - spec/spec_helper.rb
185
187
  homepage: http://github.com/sfsekaran/awesm
@@ -217,5 +219,6 @@ specification_version: 3
217
219
  summary: Totally awe.sm!
218
220
  test_files:
219
221
  - spec/awesm/project_spec.rb
222
+ - spec/awesm/url_spec.rb
220
223
  - spec/awesm_spec.rb
221
224
  - spec/spec_helper.rb