openstax_accounts 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|