badgeville_berlin 1.0.1 → 1.0.2
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/README_ADVANCED.md +4 -1
- data/badgeville.gemspec +1 -1
- data/lib/badgeville_berlin/activity_definition.rb +1 -0
- data/lib/badgeville_berlin/base_resource.rb +3 -1
- data/lib/badgeville_berlin/player.rb +1 -0
- data/lib/badgeville_berlin/version.rb +1 -1
- data/spec/unit/base_resource_spec.rb +0 -1
- data/spec/use_case/readme_use_case_spec.rb +14 -4
- metadata +6 -6
data/README_ADVANCED.md
CHANGED
@@ -106,7 +106,10 @@ This is an open source Ruby wrapper for interacting with the [Badgeville RESTful
|
|
106
106
|
|
107
107
|
```
|
108
108
|
|
109
|
-
### 8. Delete a reward definition.
|
109
|
+
### 8. Delete a reward definition.
|
110
|
+
<ul>
|
111
|
+
<li>A reward definition can only be deleted if associated earned rewards have been deleted.</li>
|
112
|
+
</ul>
|
110
113
|
```ruby
|
111
114
|
BadgevilleBerlin::RewardDefinition.delete(new_reward_def.id)
|
112
115
|
```
|
data/badgeville.gemspec
CHANGED
@@ -31,6 +31,6 @@ Gem::Specification.new do |s|
|
|
31
31
|
s.add_development_dependency "autotest-growl"
|
32
32
|
s.add_development_dependency "logger", ">=1.2.8"
|
33
33
|
|
34
|
-
s.add_runtime_dependency "activeresource",
|
34
|
+
s.add_runtime_dependency "activeresource", "~> 3.1"
|
35
35
|
# s.add_runtime_dependency "rest-client"
|
36
36
|
end
|
@@ -4,6 +4,8 @@ module BadgevilleBerlin
|
|
4
4
|
# Subclasses ActiveResource::Base as BaseResource
|
5
5
|
class BaseResource < ActiveResource::Base
|
6
6
|
|
7
|
+
COMPLEX_ATTRIBUTES = []
|
8
|
+
|
7
9
|
def initialize(attributes = {}, persisted = false)
|
8
10
|
#we return a nested JSON response with player rewards keyed off of mongo id's
|
9
11
|
#on groups endpoint which causes activeresource to break when looking up a
|
@@ -36,7 +38,7 @@ module BadgevilleBerlin
|
|
36
38
|
end
|
37
39
|
end
|
38
40
|
when Hash
|
39
|
-
if
|
41
|
+
if self.class::COMPLEX_ATTRIBUTES.include?(key)
|
40
42
|
#if the key is selector or adjustment, as on the ActivityDefinition object, we don't want to create a nested resource
|
41
43
|
value
|
42
44
|
else
|
@@ -36,7 +36,6 @@ module BadgevilleBerlin
|
|
36
36
|
# context "BaseResource passes correct arguments to send method" do
|
37
37
|
# it "should call sanitize request and update record." do
|
38
38
|
# @mock_activity_definition.bucket_drain_rate = 180
|
39
|
-
# debugger
|
40
39
|
# @path = ENDPOINTKEY + "/activity_definitions/" + @mock_activity_definition._id + ".json"
|
41
40
|
# FakeWeb.allow_net_connect = false
|
42
41
|
#
|
@@ -13,8 +13,9 @@ module BadgevilleBerlin
|
|
13
13
|
FakeWeb.allow_net_connect = true
|
14
14
|
|
15
15
|
# Configure the gem with the host site and the API Key
|
16
|
-
|
17
|
-
my_hostname =
|
16
|
+
|
17
|
+
my_hostname = '<http://myhostname.com>'
|
18
|
+
my_api_key = '<my_api_key>'
|
18
19
|
|
19
20
|
Config.conf(:host_name => my_hostname, :api_key => my_api_key)
|
20
21
|
|
@@ -265,8 +266,17 @@ module BadgevilleBerlin
|
|
265
266
|
|
266
267
|
# DELETE RewardDefinition
|
267
268
|
it "should have deleted a reward definition", :affects_bv_server => true do
|
268
|
-
|
269
|
-
|
269
|
+
# Not in the README:
|
270
|
+
@new_reward_defn2 = RewardDefinition.new(
|
271
|
+
:site_id => @new_site.id,
|
272
|
+
:name => 'Blog Rockstar',
|
273
|
+
:reward_template => '{"message":"Congrats, you are a Blog Rockstar!"}',
|
274
|
+
:components => '[{"comparator":{"$gte":1},"where":{"verb":"blog","player_id":"%player_id"},"command":"count"}]',
|
275
|
+
:active => true )
|
276
|
+
@new_reward_defn2.save
|
277
|
+
|
278
|
+
RewardDefinition.delete(@new_reward_defn2.id)
|
279
|
+
lambda { RewardDefinition.find(@new_reward_defn2.id) }.should raise_error(ActiveResource::ResourceNotFound)
|
270
280
|
end
|
271
281
|
|
272
282
|
# DELETE ActivityDefinition
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: badgeville_berlin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date:
|
15
|
+
date: 2013-09-13 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: ruby-debug19
|
@@ -163,17 +163,17 @@ dependencies:
|
|
163
163
|
requirement: !ruby/object:Gem::Requirement
|
164
164
|
none: false
|
165
165
|
requirements:
|
166
|
-
- -
|
166
|
+
- - ~>
|
167
167
|
- !ruby/object:Gem::Version
|
168
|
-
version: 3.1
|
168
|
+
version: '3.1'
|
169
169
|
type: :runtime
|
170
170
|
prerelease: false
|
171
171
|
version_requirements: !ruby/object:Gem::Requirement
|
172
172
|
none: false
|
173
173
|
requirements:
|
174
|
-
- -
|
174
|
+
- - ~>
|
175
175
|
- !ruby/object:Gem::Version
|
176
|
-
version: 3.1
|
176
|
+
version: '3.1'
|
177
177
|
description: This is an open source Ruby wrapper for interacting with the Badgeville
|
178
178
|
RESTful Berlin API.
|
179
179
|
email:
|