meducation_sdk 1.5.6 → 1.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 05ce98cbc7f4cce33f387c36ed20ee38d909fad2
4
- data.tar.gz: 4598c47944ae3626379907d1a7435ca460110487
3
+ metadata.gz: 59cdaa5f76cdde2eb332690eda73a06fc48f7679
4
+ data.tar.gz: 954e3a4ecf08267207ccea0751c0896d719bf8f6
5
5
  SHA512:
6
- metadata.gz: a226634588319ef4cd4b0311b284dae241559c71493484bd70d25ea91eaae5261df9f434952b2598e3c8f3cd1cfc617ff5ecb34eb66c35a57cec79c4b4b6b787
7
- data.tar.gz: 64c7488b21d52be76c9fcad25b97048b37c95713c08489ef7cb6f839d6e42682c0bd8cb60be5c2aef704459e93c439b569dd1f7e8e3d6f937c212bad44eb9819
6
+ metadata.gz: 1e5e383e3455c0109d8399762c5dcf73deedbfa7e234a0e18913c2caeb702fe5c2a0a116a2e40116ebc022bf55a8c946f35436b4ca3b378f40a5d22cc6beca6b
7
+ data.tar.gz: 6e468ec9dfe67820d6857ead5038651b2985024d5e2d9969030dd53ce00169bce7a101f40ebfca5413ba6c4c3f7317d84cf11c6c4f0d396c2048844c88059fc3
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ # 1.5.7 / 2014-03-4
2
+ * [FEATURE] Add authors to to collection topics
3
+
1
4
  # 1.5.6 / 2014-02-27
2
5
  * [FEATURE] Add comments to blog posts
3
6
 
@@ -0,0 +1,23 @@
1
+ module MeducationSDK
2
+
3
+ class Author < Resource
4
+ self.path = "/authors"
5
+
6
+ def user
7
+ @user ||= User.find(user_id)
8
+ end
9
+ end
10
+
11
+ class AuthorMock < Author
12
+ extend Loquor::ResourceMock
13
+
14
+ self.attributes = {
15
+ id: 728,
16
+ user_id: 100,
17
+ name: 'Dr Buick',
18
+ occupation: "Doctor",
19
+ qualifications: "All of them"
20
+ }
21
+ end
22
+
23
+ end
@@ -4,14 +4,17 @@ module MeducationSDK
4
4
 
5
5
  self.path = "/collection_topics"
6
6
 
7
- def user
8
- @user ||= User.find(user_id)
7
+ def authors
8
+ @authors ||= Author.where(id: author_ids)
9
+ end
10
+
11
+ def users
12
+ @authors ||= User.where(id: authors.map(&:user_id))
9
13
  end
10
14
 
11
15
  def comments
12
16
  @comments ||= Comment.where(id: comment_ids)
13
17
  end
14
-
15
18
  end
16
19
 
17
20
  class CollectionTopicMock < CollectionTopic
@@ -26,9 +29,8 @@ module MeducationSDK
26
29
  resource_ids: [3, 4, 5],
27
30
  views_in_last_30_days: 1,
28
31
  views_in_last_60_days: 2,
29
- rating: 123
32
+ rating: 123,
33
+ author_ids: [7,12,54]
30
34
  }
31
-
32
35
  end
33
-
34
36
  end
@@ -1,3 +1,3 @@
1
1
  module MeducationSDK
2
- VERSION = "1.5.6"
2
+ VERSION = "1.5.7"
3
3
  end
@@ -9,6 +9,7 @@ require "meducation_sdk/resource"
9
9
  require "meducation_sdk/resources/badges/badge"
10
10
 
11
11
  RESOURCES = %w{
12
+ author
12
13
  badges/answerer_badge
13
14
  badges/befriender_badge
14
15
  badges/citizen_badge
@@ -0,0 +1,15 @@
1
+ require_relative '../test_helper'
2
+ require_relative '../resource_test'
3
+
4
+ module MeducationSDK
5
+ class AuthorTest < ResourceTest
6
+ test_resource(Author, '/authors')
7
+
8
+ def test_user_calls_sdk
9
+ author = Author.new(user_id: 20)
10
+ MeducationSDK::User.expects(:find).with(20)
11
+ author.user
12
+ end
13
+ end
14
+ end
15
+
@@ -10,6 +10,20 @@ module MeducationSDK
10
10
  MeducationSDK::Comment.expects(:where).with(id: [7, 8, 9])
11
11
  topic.comments
12
12
  end
13
+ def test_authors_calls_spi
14
+ topic = CollectionTopic.new(author_ids: [7, 8, 9])
15
+ MeducationSDK::Author.expects(:where).with(id: [7, 8, 9])
16
+ topic.authors
17
+ end
18
+ def test_users_calls_spi
19
+ authors = [
20
+ Author.new(user_id: 8),
21
+ Author.new(user_id: 10)
22
+ ]
23
+ topic = CollectionTopic.new(author_ids: [7, 8, 9])
24
+ MeducationSDK::Author.expects(:where).with(id: [7, 8, 9]).returns(authors)
25
+ MeducationSDK::User.expects(:where).with(id: [8, 10])
26
+ topic.users
27
+ end
13
28
  end
14
29
  end
15
-
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: meducation_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.6
4
+ version: 1.5.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Walker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-28 00:00:00.000000000 Z
11
+ date: 2014-03-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -127,6 +127,7 @@ files:
127
127
  - lib/meducation_sdk/configuration.rb
128
128
  - lib/meducation_sdk/mocker.rb
129
129
  - lib/meducation_sdk/resource.rb
130
+ - lib/meducation_sdk/resources/author.rb
130
131
  - lib/meducation_sdk/resources/badges/answerer_badge.rb
131
132
  - lib/meducation_sdk/resources/badges/badge.rb
132
133
  - lib/meducation_sdk/resources/badges/befriender_badge.rb
@@ -181,6 +182,7 @@ files:
181
182
  - test/configuration_test.rb
182
183
  - test/mocker_test.rb
183
184
  - test/resource_test.rb
185
+ - test/resources/author_test.rb
184
186
  - test/resources/badges/answerer_badge_test.rb
185
187
  - test/resources/badges/badge_test.rb
186
188
  - test/resources/badges/befriender_badge_test.rb
@@ -259,6 +261,7 @@ test_files:
259
261
  - test/configuration_test.rb
260
262
  - test/mocker_test.rb
261
263
  - test/resource_test.rb
264
+ - test/resources/author_test.rb
262
265
  - test/resources/badges/answerer_badge_test.rb
263
266
  - test/resources/badges/badge_test.rb
264
267
  - test/resources/badges/befriender_badge_test.rb