graphql_devise 0.13.6 → 0.15.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +118 -0
- data/Appraisals +39 -5
- data/CHANGELOG.md +64 -6
- data/README.md +135 -50
- data/Rakefile +2 -1
- data/app/controllers/graphql_devise/concerns/additional_controller_methods.rb +72 -0
- data/app/controllers/graphql_devise/concerns/set_user_by_token.rb +5 -27
- data/app/controllers/graphql_devise/graphql_controller.rb +1 -1
- data/app/helpers/graphql_devise/mailer_helper.rb +2 -2
- data/app/models/graphql_devise/concerns/additional_model_methods.rb +21 -0
- data/app/models/graphql_devise/concerns/model.rb +6 -9
- data/app/views/graphql_devise/mailer/reset_password_instructions.html.erb +7 -1
- data/config/locales/en.yml +1 -0
- data/docs/usage/reset_password_flow.md +90 -0
- data/graphql_devise.gemspec +2 -2
- data/lib/generators/graphql_devise/install_generator.rb +1 -1
- data/lib/graphql_devise.rb +20 -6
- data/lib/graphql_devise/concerns/controller_methods.rb +3 -3
- data/lib/graphql_devise/default_operations/mutations.rb +10 -6
- data/lib/graphql_devise/mount_method/operation_preparer.rb +6 -6
- data/lib/graphql_devise/mount_method/operation_preparers/custom_operation_preparer.rb +6 -4
- data/lib/graphql_devise/mount_method/operation_preparers/default_operation_preparer.rb +6 -4
- data/lib/graphql_devise/mount_method/operation_preparers/{resource_name_setter.rb → resource_klass_setter.rb} +4 -4
- data/lib/graphql_devise/mutations/send_password_reset_with_token.rb +37 -0
- data/lib/graphql_devise/mutations/update_password_with_token.rb +38 -0
- data/lib/graphql_devise/resolvers/confirm_account.rb +1 -1
- data/lib/graphql_devise/resource_loader.rb +26 -11
- data/lib/graphql_devise/schema_plugin.rb +35 -16
- data/lib/graphql_devise/version.rb +1 -1
- data/spec/dummy/app/controllers/api/v1/graphql_controller.rb +13 -2
- data/spec/dummy/app/graphql/dummy_schema.rb +4 -3
- data/spec/dummy/app/graphql/mutations/reset_admin_password_with_token.rb +13 -0
- data/spec/dummy/config/routes.rb +4 -2
- data/spec/dummy/db/migrate/20200623003142_create_schema_users.rb +0 -1
- data/spec/dummy/db/schema.rb +0 -1
- data/spec/generators/graphql_devise/install_generator_spec.rb +1 -1
- data/spec/graphql/user_queries_spec.rb +120 -0
- data/spec/requests/graphql_controller_spec.rb +12 -11
- data/spec/requests/mutations/send_password_reset_with_token_spec.rb +78 -0
- data/spec/requests/mutations/update_password_with_token_spec.rb +119 -0
- data/spec/requests/queries/check_password_token_spec.rb +1 -1
- data/spec/requests/queries/introspection_query_spec.rb +149 -0
- data/spec/requests/user_controller_spec.rb +29 -9
- data/spec/services/mount_method/operation_preparer_spec.rb +5 -5
- data/spec/services/mount_method/operation_preparers/custom_operation_preparer_spec.rb +5 -5
- data/spec/services/mount_method/operation_preparers/default_operation_preparer_spec.rb +5 -5
- data/spec/services/mount_method/operation_preparers/{resource_name_setter_spec.rb → resource_klass_setter_spec.rb} +6 -6
- data/spec/services/resource_loader_spec.rb +5 -5
- data/spec/support/contexts/graphql_request.rb +11 -3
- data/spec/support/contexts/schema_test.rb +14 -0
- metadata +31 -14
- data/.travis.yml +0 -79
@@ -31,15 +31,6 @@ RSpec.describe "Integrations with the user's controller" do
|
|
31
31
|
expect(json_response[:data][:publicField]).to eq('Field does not require authentication')
|
32
32
|
end
|
33
33
|
end
|
34
|
-
|
35
|
-
context 'when using the failing route' do
|
36
|
-
it 'raises an invalid resource_name error' do
|
37
|
-
expect { post_request('/api/v1/failing') }.to raise_error(
|
38
|
-
GraphqlDevise::Error,
|
39
|
-
'Invalid resource_name `fail` provided to `graphql_context`. Possible values are: [:user, :admin, :guest, :users_customer, :schema_user].'
|
40
|
-
)
|
41
|
-
end
|
42
|
-
end
|
43
34
|
end
|
44
35
|
|
45
36
|
describe 'privateField' do
|
@@ -51,6 +42,26 @@ RSpec.describe "Integrations with the user's controller" do
|
|
51
42
|
GRAPHQL
|
52
43
|
end
|
53
44
|
|
45
|
+
context 'when authenticating before using the GQL schema' do
|
46
|
+
before { post_request('/api/v1/controller_auth') }
|
47
|
+
|
48
|
+
context 'when user is authenticated' do
|
49
|
+
let(:headers) { create(:schema_user).create_new_auth_token }
|
50
|
+
|
51
|
+
it 'allows authentication at the controller level' do
|
52
|
+
expect(json_response[:data][:privateField]).to eq('Field will always require authentication')
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
context 'when user is not authenticated' do
|
57
|
+
it 'returns a must sign in error' do
|
58
|
+
expect(json_response[:errors]).to contain_exactly(
|
59
|
+
hash_including(message: 'privateField field requires authentication', extensions: { code: 'AUTHENTICATION_ERROR' })
|
60
|
+
)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
54
65
|
context 'when using a regular schema' do
|
55
66
|
before { post_request('/api/v1/graphql') }
|
56
67
|
|
@@ -77,6 +88,15 @@ RSpec.describe "Integrations with the user's controller" do
|
|
77
88
|
)
|
78
89
|
end
|
79
90
|
end
|
91
|
+
|
92
|
+
context 'when using the failing route' do
|
93
|
+
it 'raises an invalid resource_name error' do
|
94
|
+
expect { post_request('/api/v1/failing') }.to raise_error(
|
95
|
+
GraphqlDevise::Error,
|
96
|
+
'Invalid resource_name `fail` provided to `graphql_context`. Possible values are: [:user, :admin, :guest, :users_customer, :schema_user].'
|
97
|
+
)
|
98
|
+
end
|
99
|
+
end
|
80
100
|
end
|
81
101
|
|
82
102
|
context 'when using an interpreter schema' do
|
@@ -1,12 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'rails_helper'
|
4
4
|
|
5
5
|
RSpec.describe GraphqlDevise::MountMethod::OperationPreparer do
|
6
6
|
describe '#call' do
|
7
7
|
subject(:prepared_operations) do
|
8
8
|
described_class.new(
|
9
|
-
|
9
|
+
model: model,
|
10
10
|
selected_operations: selected,
|
11
11
|
preparer: preparer,
|
12
12
|
custom: custom,
|
@@ -15,14 +15,14 @@ RSpec.describe GraphqlDevise::MountMethod::OperationPreparer do
|
|
15
15
|
end
|
16
16
|
|
17
17
|
let(:logout_class) { Class.new(GraphQL::Schema::Resolver) }
|
18
|
-
let(:
|
18
|
+
let(:model) { User }
|
19
19
|
let(:preparer) { double(:preparer, call: logout_class) }
|
20
20
|
let(:custom) { { login: double(:custom_login, graphql_name: nil) } }
|
21
21
|
let(:additional) { { user_additional: double(:user_additional) } }
|
22
22
|
let(:selected) do
|
23
23
|
{
|
24
|
-
login:
|
25
|
-
logout:{ klass: logout_class }
|
24
|
+
login: { klass: double(:login_default) },
|
25
|
+
logout: { klass: logout_class }
|
26
26
|
}
|
27
27
|
end
|
28
28
|
|
@@ -1,14 +1,14 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'rails_helper'
|
4
4
|
|
5
5
|
RSpec.describe GraphqlDevise::MountMethod::OperationPreparers::CustomOperationPreparer do
|
6
6
|
describe '#call' do
|
7
|
-
subject(:prepared) { described_class.new(selected_keys: selected_keys, custom_operations: operations,
|
7
|
+
subject(:prepared) { described_class.new(selected_keys: selected_keys, custom_operations: operations, model: model).call }
|
8
8
|
|
9
9
|
let(:login_operation) { double(:confirm_operation, graphql_name: nil) }
|
10
10
|
let(:logout_operation) { double(:sign_up_operation, graphql_name: nil) }
|
11
|
-
let(:
|
11
|
+
let(:model) { User }
|
12
12
|
let(:operations) { { login: login_operation, logout: logout_operation, invalid: double(:invalid) } }
|
13
13
|
let(:selected_keys) { [:login, :logout, :sign_up, :confirm] }
|
14
14
|
|
@@ -22,8 +22,8 @@ RSpec.describe GraphqlDevise::MountMethod::OperationPreparers::CustomOperationPr
|
|
22
22
|
|
23
23
|
prepared
|
24
24
|
|
25
|
-
expect(login_operation.instance_variable_get(:@
|
26
|
-
expect(logout_operation.instance_variable_get(:@
|
25
|
+
expect(login_operation.instance_variable_get(:@resource_klass)).to eq(User)
|
26
|
+
expect(logout_operation.instance_variable_get(:@resource_klass)).to eq(User)
|
27
27
|
end
|
28
28
|
|
29
29
|
context 'when no selected keys are provided' do
|
@@ -1,17 +1,17 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'rails_helper'
|
4
4
|
|
5
5
|
RSpec.describe GraphqlDevise::MountMethod::OperationPreparers::DefaultOperationPreparer do
|
6
6
|
describe '#call' do
|
7
7
|
subject(:prepared) { default_preparer.call }
|
8
8
|
|
9
|
-
let(:default_preparer) { described_class.new(selected_operations: operations, custom_keys: custom_keys,
|
9
|
+
let(:default_preparer) { described_class.new(selected_operations: operations, custom_keys: custom_keys, model: model, preparer: preparer) }
|
10
10
|
let(:confirm_operation) { double(:confirm_operation, graphql_name: nil) }
|
11
11
|
let(:sign_up_operation) { double(:sign_up_operation, graphql_name: nil) }
|
12
12
|
let(:login_operation) { double(:confirm_operation, graphql_name: nil) }
|
13
13
|
let(:logout_operation) { double(:sign_up_operation, graphql_name: nil) }
|
14
|
-
let(:
|
14
|
+
let(:model) { User }
|
15
15
|
let(:preparer) { double(:preparer) }
|
16
16
|
let(:custom_keys) { [:login, :logout] }
|
17
17
|
let(:operations) do
|
@@ -46,8 +46,8 @@ RSpec.describe GraphqlDevise::MountMethod::OperationPreparers::DefaultOperationP
|
|
46
46
|
|
47
47
|
prepared
|
48
48
|
|
49
|
-
expect(confirm_operation.instance_variable_get(:@
|
50
|
-
expect(sign_up_operation.instance_variable_get(:@
|
49
|
+
expect(confirm_operation.instance_variable_get(:@resource_klass)).to eq(User)
|
50
|
+
expect(sign_up_operation.instance_variable_get(:@resource_klass)).to eq(User)
|
51
51
|
end
|
52
52
|
|
53
53
|
context 'when no custom keys are provided' do
|
@@ -1,16 +1,16 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'rails_helper'
|
4
4
|
|
5
|
-
RSpec.describe GraphqlDevise::MountMethod::OperationPreparers::
|
5
|
+
RSpec.describe GraphqlDevise::MountMethod::OperationPreparers::ResourceKlassSetter do
|
6
6
|
describe '#call' do
|
7
|
-
subject(:prepared_operation) { described_class.new(
|
7
|
+
subject(:prepared_operation) { described_class.new(model).call(operation) }
|
8
8
|
|
9
|
-
let(:operation)
|
10
|
-
let(:
|
9
|
+
let(:operation) { double(:operation) }
|
10
|
+
let(:model) { User }
|
11
11
|
|
12
12
|
it 'sets a gql name to the operation' do
|
13
|
-
expect(prepared_operation.instance_variable_get(:@
|
13
|
+
expect(prepared_operation.instance_variable_get(:@resource_klass)).to eq(model)
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'rails_helper'
|
4
4
|
|
5
5
|
RSpec.describe GraphqlDevise::ResourceLoader do
|
6
6
|
describe '#call' do
|
@@ -15,8 +15,8 @@ RSpec.describe GraphqlDevise::ResourceLoader do
|
|
15
15
|
|
16
16
|
before do
|
17
17
|
allow(GraphqlDevise).to receive(:add_mapping).with(:user, resource)
|
18
|
-
allow(GraphqlDevise).to receive(:resource_mounted?).with(
|
19
|
-
allow(GraphqlDevise).to receive(:mount_resource).with(
|
18
|
+
allow(GraphqlDevise).to receive(:resource_mounted?).with(User).and_return(mounted)
|
19
|
+
allow(GraphqlDevise).to receive(:mount_resource).with(User)
|
20
20
|
end
|
21
21
|
|
22
22
|
it 'loads operations into the provided types' do
|
@@ -64,13 +64,13 @@ RSpec.describe GraphqlDevise::ResourceLoader do
|
|
64
64
|
|
65
65
|
it 'adds mappings' do
|
66
66
|
expect(GraphqlDevise).to receive(:add_mapping).with(:user, resource)
|
67
|
-
expect(GraphqlDevise).to receive(:mount_resource).with(
|
67
|
+
expect(GraphqlDevise).to receive(:mount_resource).with(User)
|
68
68
|
|
69
69
|
loader
|
70
70
|
end
|
71
71
|
|
72
72
|
context 'when resource was already mounted' do
|
73
|
-
before { allow(GraphqlDevise).to receive(:resource_mounted?).with(
|
73
|
+
before { allow(GraphqlDevise).to receive(:resource_mounted?).with(User).and_return(true) }
|
74
74
|
|
75
75
|
it 'skips schema loading' do
|
76
76
|
expect(query).not_to receive(:field)
|
@@ -5,17 +5,25 @@ RSpec.shared_context 'with graphql query request' do
|
|
5
5
|
let(:variables) { {} }
|
6
6
|
let(:graphql_params) do
|
7
7
|
if Rails::VERSION::MAJOR >= 5
|
8
|
-
|
8
|
+
{ params: { query: query, variables: variables }, headers: headers }
|
9
9
|
else
|
10
10
|
[{ query: query, variables: variables }, headers]
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
14
14
|
def post_request(path = '/api/v1/graphql_auth')
|
15
|
-
|
15
|
+
send_request(path, :post)
|
16
16
|
end
|
17
17
|
|
18
18
|
def get_request(path = '/api/v1/graphql_auth')
|
19
|
-
|
19
|
+
send_request(path, :get)
|
20
|
+
end
|
21
|
+
|
22
|
+
def send_request(path, method)
|
23
|
+
if Rails::VERSION::MAJOR >= 5
|
24
|
+
public_send(method, path, **graphql_params)
|
25
|
+
else
|
26
|
+
public_send(method, path, *graphql_params)
|
27
|
+
end
|
20
28
|
end
|
21
29
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
RSpec.shared_context 'with graphql schema test' do
|
4
|
+
let(:variables) { {} }
|
5
|
+
let(:resource_names) { [:user] }
|
6
|
+
let(:resource) { nil }
|
7
|
+
let(:controller) { instance_double(GraphqlDevise::GraphqlController) }
|
8
|
+
let(:context) do
|
9
|
+
{ current_resource: resource, controller: controller, resource_name: resource_names }
|
10
|
+
end
|
11
|
+
let(:response) do
|
12
|
+
schema.execute(query, context: context, variables: variables).deep_symbolize_keys
|
13
|
+
end
|
14
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: graphql_devise
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mario Celi
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2021-05-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: devise_token_auth
|
@@ -40,7 +40,7 @@ dependencies:
|
|
40
40
|
version: '1.8'
|
41
41
|
- - "<"
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version: 1.
|
43
|
+
version: 1.13.0
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
46
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -50,7 +50,7 @@ dependencies:
|
|
50
50
|
version: '1.8'
|
51
51
|
- - "<"
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: 1.
|
53
|
+
version: 1.13.0
|
54
54
|
- !ruby/object:Gem::Dependency
|
55
55
|
name: rails
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,19 +86,19 @@ dependencies:
|
|
86
86
|
- !ruby/object:Gem::Version
|
87
87
|
version: '0'
|
88
88
|
- !ruby/object:Gem::Dependency
|
89
|
-
name: coveralls
|
89
|
+
name: coveralls-ruby
|
90
90
|
requirement: !ruby/object:Gem::Requirement
|
91
91
|
requirements:
|
92
|
-
- - "
|
92
|
+
- - "~>"
|
93
93
|
- !ruby/object:Gem::Version
|
94
|
-
version: '0'
|
94
|
+
version: '0.2'
|
95
95
|
type: :development
|
96
96
|
prerelease: false
|
97
97
|
version_requirements: !ruby/object:Gem::Requirement
|
98
98
|
requirements:
|
99
|
-
- - "
|
99
|
+
- - "~>"
|
100
100
|
- !ruby/object:Gem::Version
|
101
|
-
version: '0'
|
101
|
+
version: '0.2'
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: factory_bot
|
104
104
|
requirement: !ruby/object:Gem::Requirement
|
@@ -275,13 +275,13 @@ executables: []
|
|
275
275
|
extensions: []
|
276
276
|
extra_rdoc_files: []
|
277
277
|
files:
|
278
|
+
- ".circleci/config.yml"
|
278
279
|
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
279
280
|
- ".github/ISSUE_TEMPLATE/enhancement.md"
|
280
281
|
- ".github/ISSUE_TEMPLATE/question.md"
|
281
282
|
- ".gitignore"
|
282
283
|
- ".rspec"
|
283
284
|
- ".rubocop.yml"
|
284
|
-
- ".travis.yml"
|
285
285
|
- Appraisals
|
286
286
|
- CHANGELOG.md
|
287
287
|
- Gemfile
|
@@ -289,10 +289,12 @@ files:
|
|
289
289
|
- README.md
|
290
290
|
- Rakefile
|
291
291
|
- app/controllers/graphql_devise/application_controller.rb
|
292
|
+
- app/controllers/graphql_devise/concerns/additional_controller_methods.rb
|
292
293
|
- app/controllers/graphql_devise/concerns/set_user_by_token.rb
|
293
294
|
- app/controllers/graphql_devise/graphql_controller.rb
|
294
295
|
- app/helpers/graphql_devise/application_helper.rb
|
295
296
|
- app/helpers/graphql_devise/mailer_helper.rb
|
297
|
+
- app/models/graphql_devise/concerns/additional_model_methods.rb
|
296
298
|
- app/models/graphql_devise/concerns/model.rb
|
297
299
|
- app/views/.keep
|
298
300
|
- app/views/graphql_devise/mailer/confirmation_instructions.html.erb
|
@@ -302,6 +304,7 @@ files:
|
|
302
304
|
- bin/setup
|
303
305
|
- config/locales/en.yml
|
304
306
|
- config/routes.rb
|
307
|
+
- docs/usage/reset_password_flow.md
|
305
308
|
- graphql_devise.gemspec
|
306
309
|
- lib/generators/graphql_devise/install_generator.rb
|
307
310
|
- lib/graphql_devise.rb
|
@@ -321,7 +324,7 @@ files:
|
|
321
324
|
- lib/graphql_devise/mount_method/operation_preparers/gql_name_setter.rb
|
322
325
|
- lib/graphql_devise/mount_method/operation_preparers/mutation_field_setter.rb
|
323
326
|
- lib/graphql_devise/mount_method/operation_preparers/resolver_type_setter.rb
|
324
|
-
- lib/graphql_devise/mount_method/operation_preparers/
|
327
|
+
- lib/graphql_devise/mount_method/operation_preparers/resource_klass_setter.rb
|
325
328
|
- lib/graphql_devise/mount_method/operation_sanitizer.rb
|
326
329
|
- lib/graphql_devise/mount_method/option_sanitizer.rb
|
327
330
|
- lib/graphql_devise/mount_method/option_sanitizers/array_checker.rb
|
@@ -338,8 +341,10 @@ files:
|
|
338
341
|
- lib/graphql_devise/mutations/logout.rb
|
339
342
|
- lib/graphql_devise/mutations/resend_confirmation.rb
|
340
343
|
- lib/graphql_devise/mutations/send_password_reset.rb
|
344
|
+
- lib/graphql_devise/mutations/send_password_reset_with_token.rb
|
341
345
|
- lib/graphql_devise/mutations/sign_up.rb
|
342
346
|
- lib/graphql_devise/mutations/update_password.rb
|
347
|
+
- lib/graphql_devise/mutations/update_password_with_token.rb
|
343
348
|
- lib/graphql_devise/rails/routes.rb
|
344
349
|
- lib/graphql_devise/resolvers/base.rb
|
345
350
|
- lib/graphql_devise/resolvers/check_password_token.rb
|
@@ -362,6 +367,7 @@ files:
|
|
362
367
|
- spec/dummy/app/graphql/interpreter_schema.rb
|
363
368
|
- spec/dummy/app/graphql/mutations/login.rb
|
364
369
|
- spec/dummy/app/graphql/mutations/register_confirmed_user.rb
|
370
|
+
- spec/dummy/app/graphql/mutations/reset_admin_password_with_token.rb
|
365
371
|
- spec/dummy/app/graphql/mutations/sign_up.rb
|
366
372
|
- spec/dummy/app/graphql/mutations/update_user.rb
|
367
373
|
- spec/dummy/app/graphql/resolvers/confirm_admin_account.rb
|
@@ -428,6 +434,7 @@ files:
|
|
428
434
|
- spec/factories/users.rb
|
429
435
|
- spec/factories/users_customers.rb
|
430
436
|
- spec/generators/graphql_devise/install_generator_spec.rb
|
437
|
+
- spec/graphql/user_queries_spec.rb
|
431
438
|
- spec/graphql_devise/model/with_email_updater_spec.rb
|
432
439
|
- spec/graphql_devise_spec.rb
|
433
440
|
- spec/models/user_spec.rb
|
@@ -439,10 +446,13 @@ files:
|
|
439
446
|
- spec/requests/mutations/logout_spec.rb
|
440
447
|
- spec/requests/mutations/resend_confirmation_spec.rb
|
441
448
|
- spec/requests/mutations/send_password_reset_spec.rb
|
449
|
+
- spec/requests/mutations/send_password_reset_with_token_spec.rb
|
442
450
|
- spec/requests/mutations/sign_up_spec.rb
|
443
451
|
- spec/requests/mutations/update_password_spec.rb
|
452
|
+
- spec/requests/mutations/update_password_with_token_spec.rb
|
444
453
|
- spec/requests/queries/check_password_token_spec.rb
|
445
454
|
- spec/requests/queries/confirm_account_spec.rb
|
455
|
+
- spec/requests/queries/introspection_query_spec.rb
|
446
456
|
- spec/requests/user_controller_spec.rb
|
447
457
|
- spec/services/mount_method/operation_preparer_spec.rb
|
448
458
|
- spec/services/mount_method/operation_preparers/custom_operation_preparer_spec.rb
|
@@ -450,7 +460,7 @@ files:
|
|
450
460
|
- spec/services/mount_method/operation_preparers/gql_name_setter_spec.rb
|
451
461
|
- spec/services/mount_method/operation_preparers/mutation_field_setter_spec.rb
|
452
462
|
- spec/services/mount_method/operation_preparers/resolver_type_setter_spec.rb
|
453
|
-
- spec/services/mount_method/operation_preparers/
|
463
|
+
- spec/services/mount_method/operation_preparers/resource_klass_setter_spec.rb
|
454
464
|
- spec/services/mount_method/operation_sanitizer_spec.rb
|
455
465
|
- spec/services/mount_method/option_sanitizer_spec.rb
|
456
466
|
- spec/services/mount_method/option_sanitizers/array_checker_spec.rb
|
@@ -465,6 +475,7 @@ files:
|
|
465
475
|
- spec/services/schema_plugin_spec.rb
|
466
476
|
- spec/spec_helper.rb
|
467
477
|
- spec/support/contexts/graphql_request.rb
|
478
|
+
- spec/support/contexts/schema_test.rb
|
468
479
|
- spec/support/factory_bot.rb
|
469
480
|
- spec/support/matchers/auth_headers_matcher.rb
|
470
481
|
- spec/support/matchers/not_change_matcher.rb
|
@@ -491,7 +502,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
491
502
|
- !ruby/object:Gem::Version
|
492
503
|
version: '0'
|
493
504
|
requirements: []
|
494
|
-
rubygems_version: 3.
|
505
|
+
rubygems_version: 3.1.4
|
495
506
|
signing_key:
|
496
507
|
specification_version: 4
|
497
508
|
summary: GraphQL queries and mutations on top of devise_token_auth
|
@@ -505,6 +516,7 @@ test_files:
|
|
505
516
|
- spec/dummy/app/graphql/interpreter_schema.rb
|
506
517
|
- spec/dummy/app/graphql/mutations/login.rb
|
507
518
|
- spec/dummy/app/graphql/mutations/register_confirmed_user.rb
|
519
|
+
- spec/dummy/app/graphql/mutations/reset_admin_password_with_token.rb
|
508
520
|
- spec/dummy/app/graphql/mutations/sign_up.rb
|
509
521
|
- spec/dummy/app/graphql/mutations/update_user.rb
|
510
522
|
- spec/dummy/app/graphql/resolvers/confirm_admin_account.rb
|
@@ -571,6 +583,7 @@ test_files:
|
|
571
583
|
- spec/factories/users.rb
|
572
584
|
- spec/factories/users_customers.rb
|
573
585
|
- spec/generators/graphql_devise/install_generator_spec.rb
|
586
|
+
- spec/graphql/user_queries_spec.rb
|
574
587
|
- spec/graphql_devise/model/with_email_updater_spec.rb
|
575
588
|
- spec/graphql_devise_spec.rb
|
576
589
|
- spec/models/user_spec.rb
|
@@ -582,10 +595,13 @@ test_files:
|
|
582
595
|
- spec/requests/mutations/logout_spec.rb
|
583
596
|
- spec/requests/mutations/resend_confirmation_spec.rb
|
584
597
|
- spec/requests/mutations/send_password_reset_spec.rb
|
598
|
+
- spec/requests/mutations/send_password_reset_with_token_spec.rb
|
585
599
|
- spec/requests/mutations/sign_up_spec.rb
|
586
600
|
- spec/requests/mutations/update_password_spec.rb
|
601
|
+
- spec/requests/mutations/update_password_with_token_spec.rb
|
587
602
|
- spec/requests/queries/check_password_token_spec.rb
|
588
603
|
- spec/requests/queries/confirm_account_spec.rb
|
604
|
+
- spec/requests/queries/introspection_query_spec.rb
|
589
605
|
- spec/requests/user_controller_spec.rb
|
590
606
|
- spec/services/mount_method/operation_preparer_spec.rb
|
591
607
|
- spec/services/mount_method/operation_preparers/custom_operation_preparer_spec.rb
|
@@ -593,7 +609,7 @@ test_files:
|
|
593
609
|
- spec/services/mount_method/operation_preparers/gql_name_setter_spec.rb
|
594
610
|
- spec/services/mount_method/operation_preparers/mutation_field_setter_spec.rb
|
595
611
|
- spec/services/mount_method/operation_preparers/resolver_type_setter_spec.rb
|
596
|
-
- spec/services/mount_method/operation_preparers/
|
612
|
+
- spec/services/mount_method/operation_preparers/resource_klass_setter_spec.rb
|
597
613
|
- spec/services/mount_method/operation_sanitizer_spec.rb
|
598
614
|
- spec/services/mount_method/option_sanitizer_spec.rb
|
599
615
|
- spec/services/mount_method/option_sanitizers/array_checker_spec.rb
|
@@ -608,6 +624,7 @@ test_files:
|
|
608
624
|
- spec/services/schema_plugin_spec.rb
|
609
625
|
- spec/spec_helper.rb
|
610
626
|
- spec/support/contexts/graphql_request.rb
|
627
|
+
- spec/support/contexts/schema_test.rb
|
611
628
|
- spec/support/factory_bot.rb
|
612
629
|
- spec/support/matchers/auth_headers_matcher.rb
|
613
630
|
- spec/support/matchers/not_change_matcher.rb
|