talentlms 0.0.1 → 1.0.0
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/.travis.yml +5 -0
- data/lib/talentlms.rb +12 -0
- data/lib/talentlms/version.rb +1 -1
- data/test/unit/api_test.rb +40 -0
- data/test/unit/client_test.rb +1 -17
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8e7382d7696dd177403fb5baae0e0616dce60b86
|
4
|
+
data.tar.gz: 2a183732ab174a48b4389e9142c2f89072c63785
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8348f14f0370ea7bdace178d85c1b019a6c17b44231550156af73fb1e4f4959a712fac350e9478a18d72772391086f23b5b09cdd61ed7cb4070fbd7dcd44350c
|
7
|
+
data.tar.gz: 776c9f0bc04a9b9ce1d6813dfc8695fe39649c1394b365d4beec28a3696b469fa684f4ce2167353072b36e03d64eeda1219400583a9e0e4f4632f900b9766a6e
|
data/.travis.yml
ADDED
data/lib/talentlms.rb
CHANGED
@@ -1,2 +1,14 @@
|
|
1
1
|
require "talentlms/version"
|
2
2
|
require "talentlms/client"
|
3
|
+
|
4
|
+
module TalentLMS
|
5
|
+
extend self
|
6
|
+
|
7
|
+
def init(options={})
|
8
|
+
@@client = TalentLMS::Client.new(options)
|
9
|
+
end
|
10
|
+
|
11
|
+
def method_missing(method, *args, &block)
|
12
|
+
@@client.send(method, *args, &block)
|
13
|
+
end
|
14
|
+
end
|
data/lib/talentlms/version.rb
CHANGED
@@ -0,0 +1,40 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
describe 'API' do
|
4
|
+
before do
|
5
|
+
TalentLMS.init({
|
6
|
+
:api_key => '03a82de6de2d939564aa607b0e24a030b5047c54ed87c77fea',
|
7
|
+
:sub_domain => 'example'
|
8
|
+
})
|
9
|
+
@headers = {
|
10
|
+
'Authorization' => 'Basic MDNhODJkZTZkZTJkOTM5NTY0YWE2MDdiMGUyNGEwMzBiNTA0N2M1NGVkODdjNzdmZWE6',
|
11
|
+
'Host' => 'example.talentlms.com',
|
12
|
+
'User-Agent' => 'RubyHTTPGem/0.5.0'
|
13
|
+
}
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'GET users' do
|
17
|
+
stub_request(:get, "https://example.talentlms.com/api/v1/users")
|
18
|
+
.with(:headers => @headers)
|
19
|
+
.to_return(:status => 200, :body => "[{\"id\": 1}, {\"id\": 2}]", :headers => {})
|
20
|
+
|
21
|
+
expected = [{"id" => 1}, {"id" => 2}]
|
22
|
+
assert_equal expected, TalentLMS.users
|
23
|
+
end
|
24
|
+
|
25
|
+
it 'GET user' do
|
26
|
+
stub_request(:get, "https://example.talentlms.com/api/v1/users/id:1")
|
27
|
+
.with(:headers => @headers)
|
28
|
+
.to_return(:status => 200, :body => "{\"id\": 1}", :headers => {})
|
29
|
+
expected = {"id" => 1}
|
30
|
+
assert_equal expected, TalentLMS.users(:id => 1)
|
31
|
+
end
|
32
|
+
|
33
|
+
it 'GET course' do
|
34
|
+
stub_request(:get, "https://example.talentlms.com/api/v1/courses/id:5")
|
35
|
+
.with(:headers => @headers)
|
36
|
+
.to_return(:status => 200, :body => "{\"id\": 5}", :headers => {})
|
37
|
+
expected = {"id" => 5}
|
38
|
+
assert_equal expected, TalentLMS.courses(:id => 5)
|
39
|
+
end
|
40
|
+
end
|
data/test/unit/client_test.rb
CHANGED
@@ -7,16 +7,11 @@ describe 'Client' do
|
|
7
7
|
:api_key => @key,
|
8
8
|
:sub_domain => 'example'
|
9
9
|
})
|
10
|
-
@headers = {
|
11
|
-
'Authorization' => 'Basic MDNhODJkZTZkZTJkOTM5NTY0YWE2MDdiMGUyNGEwMzBiNTA0N2M1NGVkODdjNzdmZWE6',
|
12
|
-
'Host' => 'example.talentlms.com',
|
13
|
-
'User-Agent' => 'RubyHTTPGem/0.5.0'
|
14
|
-
}
|
15
10
|
end
|
16
11
|
|
17
12
|
describe '#auth_header' do
|
18
13
|
it 'adds auth header without white space' do
|
19
|
-
expected =
|
14
|
+
expected = 'Basic MDNhODJkZTZkZTJkOTM5NTY0YWE2MDdiMGUyNGEwMzBiNTA0N2M1NGVkODdjNzdmZWE6'
|
20
15
|
assert_equal expected, @client.auth_header(@key)["Authorization"]
|
21
16
|
end
|
22
17
|
end
|
@@ -37,15 +32,4 @@ describe 'Client' do
|
|
37
32
|
assert_equal expected, @client.route_for_method('usersetstatus', :user_id => 1, :status => 'ok')
|
38
33
|
end
|
39
34
|
end
|
40
|
-
|
41
|
-
describe 'API' do
|
42
|
-
it 'finds user by id' do
|
43
|
-
stub_request(:get, "https://example.talentlms.com/api/v1/users/id:1").
|
44
|
-
with(:headers => @headers).
|
45
|
-
to_return(:status => 200, :body => "{\"id\": 1}", :headers => {})
|
46
|
-
|
47
|
-
expected = {"id" => 1}
|
48
|
-
assert_equal expected, @client.users(:id => 1)
|
49
|
-
end
|
50
|
-
end
|
51
35
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: talentlms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tyler Mercier
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-02-
|
11
|
+
date: 2014-02-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: http
|
@@ -89,6 +89,7 @@ extra_rdoc_files: []
|
|
89
89
|
files:
|
90
90
|
- .gitignore
|
91
91
|
- .ruby-version
|
92
|
+
- .travis.yml
|
92
93
|
- Gemfile
|
93
94
|
- LICENSE.txt
|
94
95
|
- README.md
|
@@ -98,6 +99,7 @@ files:
|
|
98
99
|
- lib/talentlms/version.rb
|
99
100
|
- talentlms.gemspec
|
100
101
|
- test/test_helper.rb
|
102
|
+
- test/unit/api_test.rb
|
101
103
|
- test/unit/client_test.rb
|
102
104
|
homepage: ''
|
103
105
|
licenses:
|
@@ -125,4 +127,5 @@ specification_version: 4
|
|
125
127
|
summary: Talent LMS API gem
|
126
128
|
test_files:
|
127
129
|
- test/test_helper.rb
|
130
|
+
- test/unit/api_test.rb
|
128
131
|
- test/unit/client_test.rb
|