wanikani 0.10 → 1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/wanikani.rb +14 -3
  3. data/lib/wanikani/version.rb +1 -1
  4. metadata +13 -13
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: beb950d9e9b0e8cce6aee49fdf0335f224ef47a3
4
- data.tar.gz: 2f4748d82f5d5ed35a196da744783abe38d87ff0
3
+ metadata.gz: 897f1107f813246c6ceda13bc5293a348dd945c1
4
+ data.tar.gz: a6bb887b6f2637554d36d7882384db1fa4d68bc8
5
5
  SHA512:
6
- metadata.gz: db3e2d9d068d942bdba7f7b027ddc1330b2661c1a091a2993af75cf6a3f1df3b98e90fa7a2fae6a507c5de517f9dbb450f2427b1bb8cab2bc6ceb9db5550b84f
7
- data.tar.gz: 4e96f905d0f528157892794c72741826f471e8d5afee140587780320c9ab57a687cfc80bb641903983f94c443ad5b9288b0e478c3ac163a69d1f78b7b879b7a6
6
+ metadata.gz: 379199342e4ec99a2eb26594587210da0b4c74e8e5e9282c93464c10fd665d3424571c9c67717236e6cb880955b40e7747e1b72726ee002475d2d7573090a9ca
7
+ data.tar.gz: 9591768aff87b20d4f5d9d221e90e05ba423db45d676fc512480dc14d5868559557ab9c0116d9bb397389c865cc991e0516cbe0d15e682c136c9d1a7d88a9376
@@ -14,7 +14,9 @@ Encoding.default_external = Encoding::UTF_8
14
14
  Encoding.default_internal = Encoding::UTF_8
15
15
 
16
16
  module Wanikani
17
- API_ENDPOINT = "http://www.wanikani.com/api/user"
17
+ API_ENDPOINT = "https://www.wanikani.com/api"
18
+ DEFAULT_API_VERSION = "v1.2"
19
+ VALID_API_VERSIONS = %w(v1 v1.1 v1.2)
18
20
 
19
21
  def self.api_key=(api_key)
20
22
  @api_key = api_key
@@ -24,12 +26,21 @@ module Wanikani
24
26
  @api_key
25
27
  end
26
28
 
29
+ def self.api_version=(api_version)
30
+ raise ArgumentError, "API version should be one of the following: #{VALID_API_VERSIONS.join(', ')}." unless VALID_API_VERSIONS.include?(api_version) || api_version.nil?
31
+ @api_version = api_version
32
+ end
33
+
34
+ def self.api_version
35
+ @api_version ||= DEFAULT_API_VERSION
36
+ end
37
+
27
38
  def self.api_response(resource, optional_arg = nil)
28
39
  raise ArgumentError, "You must define a resource to query Wanikani" if resource.nil? || resource.empty?
29
40
  raise ArgumentError, "You must set your Wanikani API key before querying the API" if Wanikani.api_key.nil? || Wanikani.api_key.empty?
30
41
 
31
42
  begin
32
- response = RestClient.get("#{Wanikani::API_ENDPOINT}/#{Wanikani.api_key}/#{resource}/#{optional_arg}")
43
+ response = RestClient.get("#{Wanikani::API_ENDPOINT}/#{Wanikani.api_version}/user/#{Wanikani.api_key}/#{resource}/#{optional_arg}")
33
44
  parsed_response = MultiJson.load(response)
34
45
 
35
46
  if parsed_response.has_key?("error")
@@ -46,7 +57,7 @@ module Wanikani
46
57
  api_key ||= Wanikani.api_key
47
58
  return false if api_key.nil? || api_key.empty?
48
59
 
49
- response = RestClient.get("#{Wanikani::API_ENDPOINT}/#{api_key}/user-information/")
60
+ response = RestClient.get("#{Wanikani::API_ENDPOINT}/#{Wanikani.api_version}/user/#{api_key}/user-information/")
50
61
  !MultiJson.load(response).has_key?("error")
51
62
  end
52
63
 
@@ -1,3 +1,3 @@
1
1
  module Wanikani
2
- VERSION = '0.10'
2
+ VERSION = '1.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wanikani
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.10'
4
+ version: '1.0'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dennis Martinez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-11 00:00:00.000000000 Z
11
+ date: 2014-09-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -16,57 +16,57 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.6'
19
+ version: '1.7'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.6'
26
+ version: '1.7'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: multi_json
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.9'
33
+ version: '1.10'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.9'
40
+ version: '1.10'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '2.14'
47
+ version: '3.1'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '2.14'
54
+ version: '3.1'
55
55
  - !ruby/object:Gem::Dependency
56
- name: fakeweb
56
+ name: webmock
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '1.3'
61
+ version: '1.18'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '1.3'
69
- description: Use WaniKani's (http://www.wanikani.com/) API in your Ruby applications
68
+ version: '1.18'
69
+ description: Use WaniKani's (https://www.wanikani.com/) API in your Ruby applications
70
70
  email: dennis@dennmart.com
71
71
  executables: []
72
72
  extensions: []
@@ -81,7 +81,7 @@ files:
81
81
  - lib/wanikani/study_queue.rb
82
82
  - lib/wanikani/user.rb
83
83
  - lib/wanikani/version.rb
84
- homepage: http://github.com/dennmart/wanikani-gem
84
+ homepage: https://github.com/dennmart/wanikani-gem
85
85
  licenses:
86
86
  - MIT
87
87
  metadata: {}