graphql_devise 0.9.2 → 0.10.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +9 -2
- data/Appraisals +8 -0
- data/CHANGELOG.md +9 -1
- data/README.md +32 -2
- data/app/graphql/graphql_devise/mutations/sign_up.rb +5 -1
- data/gemfiles/rails6.0_graphql_edge.gemfile +11 -0
- data/lib/graphql_devise/rails/routes.rb +13 -5
- data/lib/graphql_devise/version.rb +1 -1
- data/spec/dummy/app/graphql/mutations/register_confirmed_user.rb +23 -0
- data/spec/dummy/app/graphql/resolvers/public_user.rb +11 -0
- data/spec/dummy/config/routes.rb +4 -0
- data/spec/dummy/log/test.log +4075 -0
- data/spec/requests/mutations/additional_mutations_spec.rb +65 -0
- data/spec/requests/mutations/additional_queries_spec.rb +31 -0
- data/spec/spec_helper.rb +10 -7
- metadata +11 -2
@@ -0,0 +1,65 @@
|
|
1
|
+
require 'rails_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Additional Mutations' do
|
4
|
+
include_context 'with graphql query request'
|
5
|
+
|
6
|
+
let(:name) { Faker::Name.name }
|
7
|
+
let(:password) { Faker::Internet.password }
|
8
|
+
let(:password_confirmation) { password }
|
9
|
+
let(:email) { Faker::Internet.email }
|
10
|
+
let(:redirect) { Faker::Internet.url }
|
11
|
+
|
12
|
+
context 'when using the user model' do
|
13
|
+
let(:query) do
|
14
|
+
<<-GRAPHQL
|
15
|
+
mutation {
|
16
|
+
registerConfirmedUser(
|
17
|
+
email: "#{email}",
|
18
|
+
name: "#{name}",
|
19
|
+
password: "#{password}",
|
20
|
+
passwordConfirmation: "#{password_confirmation}"
|
21
|
+
) {
|
22
|
+
user {
|
23
|
+
email
|
24
|
+
name
|
25
|
+
}
|
26
|
+
}
|
27
|
+
}
|
28
|
+
GRAPHQL
|
29
|
+
end
|
30
|
+
|
31
|
+
context 'when params are correct' do
|
32
|
+
it 'creates a new resource that is already confirmed' do
|
33
|
+
expect { post_request }.to(
|
34
|
+
change(User, :count).by(1)
|
35
|
+
.and(not_change(ActionMailer::Base.deliveries, :count))
|
36
|
+
)
|
37
|
+
|
38
|
+
user = User.last
|
39
|
+
|
40
|
+
expect(user).to be_confirmed
|
41
|
+
expect(json_response[:data][:registerConfirmedUser]).to include(
|
42
|
+
user: {
|
43
|
+
email: email,
|
44
|
+
name: name
|
45
|
+
}
|
46
|
+
)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
context 'when params are incorrect' do
|
51
|
+
let(:password_confirmation) { 'not the same' }
|
52
|
+
|
53
|
+
it 'returns descriptive errors' do
|
54
|
+
expect { post_request }.to not_change(User, :count)
|
55
|
+
|
56
|
+
expect(json_response[:errors]).to contain_exactly(
|
57
|
+
hash_including(
|
58
|
+
message: 'Custom registration failed',
|
59
|
+
extensions: { code: 'USER_ERROR', detailed_errors: ["Password confirmation doesn't match Password"] }
|
60
|
+
)
|
61
|
+
)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'rails_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Additional Queries' do
|
4
|
+
include_context 'with graphql query request'
|
5
|
+
|
6
|
+
let(:public_user) { create(:user, :confirmed) }
|
7
|
+
|
8
|
+
context 'when using the user model' do
|
9
|
+
let(:query) do
|
10
|
+
<<-GRAPHQL
|
11
|
+
query {
|
12
|
+
publicUser(
|
13
|
+
id: #{public_user.id}
|
14
|
+
) {
|
15
|
+
email
|
16
|
+
name
|
17
|
+
}
|
18
|
+
}
|
19
|
+
GRAPHQL
|
20
|
+
end
|
21
|
+
|
22
|
+
before { post_request }
|
23
|
+
|
24
|
+
it 'fetches a user by ID' do
|
25
|
+
expect(json_response[:data][:publicUser]).to include(
|
26
|
+
email: public_user.email,
|
27
|
+
name: public_user.name
|
28
|
+
)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,14 +1,17 @@
|
|
1
1
|
require 'pry'
|
2
2
|
require 'bundler/setup'
|
3
3
|
require 'graphql_devise'
|
4
|
-
require 'simplecov'
|
5
|
-
require 'coveralls'
|
6
4
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
5
|
+
if ENV['CI'] && !ENV['SKIP_COVERALLS']
|
6
|
+
require 'simplecov'
|
7
|
+
require 'coveralls'
|
8
|
+
|
9
|
+
SimpleCov.formatter = Coveralls::SimpleCov::Formatter
|
10
|
+
SimpleCov.start do
|
11
|
+
add_filter 'spec'
|
12
|
+
add_filter 'test'
|
13
|
+
add_filter 'lib/generators'
|
14
|
+
end
|
12
15
|
end
|
13
16
|
|
14
17
|
RSpec.configure do |config|
|
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.10.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: 2020-02-
|
12
|
+
date: 2020-02-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: devise_token_auth
|
@@ -313,6 +313,7 @@ files:
|
|
313
313
|
- gemfiles/rails6.0_graphql1.10.gemfile
|
314
314
|
- gemfiles/rails6.0_graphql1.8.gemfile
|
315
315
|
- gemfiles/rails6.0_graphql1.9.gemfile
|
316
|
+
- gemfiles/rails6.0_graphql_edge.gemfile
|
316
317
|
- gemfiles/rails_edge_graphql_edge.gemfile
|
317
318
|
- graphql_devise.gemspec
|
318
319
|
- lib/generators/graphql_devise/install_generator.rb
|
@@ -331,7 +332,9 @@ files:
|
|
331
332
|
- spec/dummy/app/controllers/application_controller.rb
|
332
333
|
- spec/dummy/app/graphql/dummy_schema.rb
|
333
334
|
- spec/dummy/app/graphql/mutations/login.rb
|
335
|
+
- spec/dummy/app/graphql/mutations/register_confirmed_user.rb
|
334
336
|
- spec/dummy/app/graphql/mutations/sign_up.rb
|
337
|
+
- spec/dummy/app/graphql/resolvers/public_user.rb
|
335
338
|
- spec/dummy/app/graphql/resolvers/user_show.rb
|
336
339
|
- spec/dummy/app/graphql/types/base_object.rb
|
337
340
|
- spec/dummy/app/graphql/types/custom_admin_type.rb
|
@@ -393,6 +396,8 @@ files:
|
|
393
396
|
- spec/graphql_devise_spec.rb
|
394
397
|
- spec/models/user_spec.rb
|
395
398
|
- spec/rails_helper.rb
|
399
|
+
- spec/requests/mutations/additional_mutations_spec.rb
|
400
|
+
- spec/requests/mutations/additional_queries_spec.rb
|
396
401
|
- spec/requests/mutations/login_spec.rb
|
397
402
|
- spec/requests/mutations/logout_spec.rb
|
398
403
|
- spec/requests/mutations/resend_confirmation_spec.rb
|
@@ -447,8 +452,10 @@ test_files:
|
|
447
452
|
- spec/dummy/app/graphql/types/query_type.rb
|
448
453
|
- spec/dummy/app/graphql/types/base_object.rb
|
449
454
|
- spec/dummy/app/graphql/types/user_type.rb
|
455
|
+
- spec/dummy/app/graphql/mutations/register_confirmed_user.rb
|
450
456
|
- spec/dummy/app/graphql/mutations/login.rb
|
451
457
|
- spec/dummy/app/graphql/mutations/sign_up.rb
|
458
|
+
- spec/dummy/app/graphql/resolvers/public_user.rb
|
452
459
|
- spec/dummy/app/graphql/resolvers/user_show.rb
|
453
460
|
- spec/dummy/app/graphql/dummy_schema.rb
|
454
461
|
- spec/dummy/app/jobs/application_job.rb
|
@@ -506,6 +513,8 @@ test_files:
|
|
506
513
|
- spec/requests/mutations/logout_spec.rb
|
507
514
|
- spec/requests/mutations/send_password_reset_spec.rb
|
508
515
|
- spec/requests/mutations/update_password_spec.rb
|
516
|
+
- spec/requests/mutations/additional_mutations_spec.rb
|
517
|
+
- spec/requests/mutations/additional_queries_spec.rb
|
509
518
|
- spec/requests/mutations/sign_up_spec.rb
|
510
519
|
- spec/requests/mutations/resend_confirmation_spec.rb
|
511
520
|
- spec/requests/queries/confirm_account_spec.rb
|