meducation_sdk 1.6.4 → 1.6.5
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 +3 -0
- data/lib/meducation_sdk/services/recommender.rb +11 -6
- data/lib/meducation_sdk/version.rb +1 -1
- data/test/services/recommender_test.rb +10 -2
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 88b274bb643e4cd8f5b49a2320791031006b1725
|
4
|
+
data.tar.gz: 48542ce459f4b7b4c181d7c3ba3015a9244514e9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 32776277566684a0b2e58ad7e51952b9b396e21194f11167d5376d27d6f57325a4cc6d7773816ea1e07396fcd5aace9185460cf507e137f1f0547ca0e759ef9f
|
7
|
+
data.tar.gz: d79509139ba22b70c044023877e73e4b7a84d5a27415a381f93212b6b39faf01062279988c0a83d83875e91fccb05596ec2b9a831d42f13adcb36745de0a30cd
|
data/CHANGELOG.md
CHANGED
@@ -2,13 +2,13 @@ module MeducationSDK
|
|
2
2
|
class Recommender
|
3
3
|
include Helpers
|
4
4
|
|
5
|
-
def self.recommend(
|
6
|
-
new(
|
5
|
+
def self.recommend(items, options = {})
|
6
|
+
new(items, options).recommend
|
7
7
|
end
|
8
8
|
|
9
|
-
attr_reader :
|
10
|
-
def initialize(
|
11
|
-
@
|
9
|
+
attr_reader :items
|
10
|
+
def initialize(items, options = {})
|
11
|
+
@items = [items].flatten
|
12
12
|
@options = options
|
13
13
|
@limit = options[:limit] || 5
|
14
14
|
end
|
@@ -54,7 +54,12 @@ module MeducationSDK
|
|
54
54
|
end
|
55
55
|
|
56
56
|
def recommender_json
|
57
|
-
path = "
|
57
|
+
path = "/combined"
|
58
|
+
separator = "?"
|
59
|
+
@items.each do |item|
|
60
|
+
path << separator << "#{spi_type_for(item.class.name)}/#{item.id}"
|
61
|
+
separator = "&"
|
62
|
+
end
|
58
63
|
log "Calling #{config.recommender_host}:#{config.recommender_host}#{path}"
|
59
64
|
response = Net::HTTP.get_response(config.recommender_host, path, config.recommender_port)
|
60
65
|
body = response.body
|
@@ -37,13 +37,21 @@ module MeducationSDK
|
|
37
37
|
Recommender.recommend(nil)
|
38
38
|
end
|
39
39
|
|
40
|
-
def
|
40
|
+
def test_should_call_the_recommender_service_for_individual_recommendation
|
41
41
|
@per_result.expects(:per).with(5).returns(@per_result)
|
42
|
-
Net::HTTP.expects(:get_response).with("recommender.meducation.net", "/MediaFile/#{item.id}", 4567).returns(empty_response)
|
42
|
+
Net::HTTP.expects(:get_response).with("recommender.meducation.net", "/combined?MediaFile/#{item.id}", 4567).returns(empty_response)
|
43
43
|
MediaFile.expects(:where).with('rating > 2').returns(@per_result)
|
44
44
|
Recommender.new(item).recommend
|
45
45
|
end
|
46
46
|
|
47
|
+
def test_should_call_the_recommender_service_for_multiple_recommendations
|
48
|
+
@per_result.expects(:per).with(5).returns(@per_result)
|
49
|
+
@per_result.stubs(to_a: [item, item2, item3])
|
50
|
+
Net::HTTP.expects(:get_response).with("recommender.meducation.net", "/combined?MediaFile/#{item.id}&MediaFile/#{item2.id}&MediaFile/#{item3.id}", 4567).returns(empty_response)
|
51
|
+
MediaFile.expects(:where).with('rating > 2').returns(@per_result)
|
52
|
+
Recommender.new([item, item2, item3]).recommend
|
53
|
+
end
|
54
|
+
|
47
55
|
def test_should_call_parse_results_of_recommendation_service
|
48
56
|
json = [
|
49
57
|
{"type" => "MediaFile", "id" => item.id, "score" => 0.0097},
|
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.6.
|
4
|
+
version: 1.6.5
|
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-03-
|
11
|
+
date: 2014-03-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -258,7 +258,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
258
258
|
version: '0'
|
259
259
|
requirements: []
|
260
260
|
rubyforge_project:
|
261
|
-
rubygems_version: 2.
|
261
|
+
rubygems_version: 2.1.9
|
262
262
|
signing_key:
|
263
263
|
specification_version: 4
|
264
264
|
summary: The SDK for Meducation
|
@@ -320,3 +320,4 @@ test_files:
|
|
320
320
|
- test/resources/vote_test.rb
|
321
321
|
- test/services/recommender_test.rb
|
322
322
|
- test/test_helper.rb
|
323
|
+
has_rdoc:
|