openstax_accounts 0.1.0 → 0.2.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.
- data/lib/openstax/accounts/version.rb +1 -1
- data/lib/openstax_accounts.rb +15 -4
- data/spec/dummy/app/controllers/api/users_controller.rb +7 -0
- data/spec/dummy/app/controllers/oauth_controller.rb +8 -0
- data/spec/dummy/config/routes.rb +9 -3
- data/spec/lib/openstax_accounts_spec.rb +9 -2
- metadata +7 -3
data/lib/openstax_accounts.rb
CHANGED
@@ -103,17 +103,28 @@ module OpenStax
|
|
103
103
|
token.request(http_method, api_url, options)
|
104
104
|
end
|
105
105
|
|
106
|
-
# Creates an ApplicationUser in Accounts for
|
107
|
-
# OpenStax::Accounts::User.
|
106
|
+
# Creates an ApplicationUser in Accounts for the configured app
|
107
|
+
# and the given OpenStax::Accounts::User.
|
108
108
|
# Also takes an optional API version parameter. Defaults to :v1.
|
109
109
|
# On failure, throws an Exception, just like api_call.
|
110
110
|
# On success, returns an OAuth2::Response object.
|
111
|
-
def create_application_user(user, version =
|
111
|
+
def create_application_user(user, version = :v1)
|
112
112
|
options = {:access_token => user.access_token,
|
113
|
-
:api_version =>
|
113
|
+
:api_version => version}
|
114
114
|
api_call(:post, 'application_users', options)
|
115
115
|
end
|
116
116
|
|
117
|
+
# Performs a user search in Accounts for the configured app.
|
118
|
+
# Takes a query parameter and an optional API version parameter.
|
119
|
+
# API version currently defaults to :v1.
|
120
|
+
# On failure, throws an Exception, just like api_call.
|
121
|
+
# On success, returns an OAuth2::Response object.
|
122
|
+
def user_search(query, version = :v1)
|
123
|
+
options = {:params => {:q => query},
|
124
|
+
:api_version => version}
|
125
|
+
api_call(:get, 'users/search', options)
|
126
|
+
end
|
127
|
+
|
117
128
|
protected
|
118
129
|
|
119
130
|
def client
|
data/spec/dummy/config/routes.rb
CHANGED
@@ -1,11 +1,17 @@
|
|
1
1
|
Rails.application.routes.draw do
|
2
|
-
mount OpenStax::Accounts::Engine =>
|
2
|
+
mount OpenStax::Accounts::Engine => '/accounts'
|
3
|
+
|
4
|
+
post 'oauth/token', :to => 'oauth#token'
|
3
5
|
|
4
6
|
namespace :api do
|
5
|
-
post
|
7
|
+
post 'dummy', :to => 'dummy#dummy'
|
6
8
|
|
7
9
|
resource :application_users, :only => :create
|
10
|
+
|
11
|
+
resource :users, :only => [] do
|
12
|
+
get 'search'
|
13
|
+
end
|
8
14
|
end
|
9
15
|
|
10
|
-
root :to =>
|
16
|
+
root :to => 'application#index'
|
11
17
|
end
|
@@ -7,8 +7,7 @@ module OpenStax
|
|
7
7
|
it 'makes api calls' do
|
8
8
|
expect(Api::DummyController.last_action).to be_nil
|
9
9
|
expect(Api::DummyController.last_params).to be_nil
|
10
|
-
Accounts.api_call(:post, 'dummy', :
|
11
|
-
:params => {:test => true})
|
10
|
+
Accounts.api_call(:post, 'dummy', :params => {:test => true})
|
12
11
|
expect(Api::DummyController.last_action).to eq :dummy
|
13
12
|
expect(Api::DummyController.last_params).to include 'test' => 'true'
|
14
13
|
end
|
@@ -20,5 +19,13 @@ module OpenStax
|
|
20
19
|
expect(Api::ApplicationUsersController.last_action).to eq :create
|
21
20
|
expect(Api::ApplicationUsersController.last_params).not_to be_nil
|
22
21
|
end
|
22
|
+
|
23
|
+
it 'makes api call to user search' do
|
24
|
+
expect(Api::UsersController.last_action).to be_nil
|
25
|
+
expect(Api::UsersController.last_params).to be_nil
|
26
|
+
Accounts.user_search('sth')
|
27
|
+
expect(Api::UsersController.last_action).to eq :search
|
28
|
+
expect(Api::UsersController.last_params).to include :q => 'sth'
|
29
|
+
end
|
23
30
|
end
|
24
31
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: openstax_accounts
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -301,7 +301,9 @@ files:
|
|
301
301
|
- spec/dummy/app/assets/stylesheets/application.css
|
302
302
|
- spec/dummy/app/controllers/api/application_users_controller.rb
|
303
303
|
- spec/dummy/app/controllers/api/dummy_controller.rb
|
304
|
+
- spec/dummy/app/controllers/api/users_controller.rb
|
304
305
|
- spec/dummy/app/controllers/application_controller.rb
|
306
|
+
- spec/dummy/app/controllers/oauth_controller.rb
|
305
307
|
- spec/dummy/app/helpers/application_helper.rb
|
306
308
|
- spec/dummy/config/application.rb
|
307
309
|
- spec/dummy/config/boot.rb
|
@@ -345,7 +347,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
345
347
|
version: '0'
|
346
348
|
segments:
|
347
349
|
- 0
|
348
|
-
hash: -
|
350
|
+
hash: -1878082526811201719
|
349
351
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
350
352
|
none: false
|
351
353
|
requirements:
|
@@ -354,7 +356,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
354
356
|
version: '0'
|
355
357
|
segments:
|
356
358
|
- 0
|
357
|
-
hash: -
|
359
|
+
hash: -1878082526811201719
|
358
360
|
requirements: []
|
359
361
|
rubyforge_project:
|
360
362
|
rubygems_version: 1.8.25
|
@@ -368,7 +370,9 @@ test_files:
|
|
368
370
|
- spec/dummy/app/assets/stylesheets/application.css
|
369
371
|
- spec/dummy/app/controllers/api/application_users_controller.rb
|
370
372
|
- spec/dummy/app/controllers/api/dummy_controller.rb
|
373
|
+
- spec/dummy/app/controllers/api/users_controller.rb
|
371
374
|
- spec/dummy/app/controllers/application_controller.rb
|
375
|
+
- spec/dummy/app/controllers/oauth_controller.rb
|
372
376
|
- spec/dummy/app/helpers/application_helper.rb
|
373
377
|
- spec/dummy/config/application.rb
|
374
378
|
- spec/dummy/config/boot.rb
|