hello-rails 0.5.0 → 0.5.1

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.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +16 -4
  3. data/app/controllers/hello/concerns/management/forgot_password.rb +1 -1
  4. data/app/controllers/hello/concerns/registration/sign_up.rb +7 -3
  5. data/app/controllers/hello/registration/sign_up_controller.rb +9 -1
  6. data/app/models/access.rb +2 -1
  7. data/app/models/credential.rb +2 -1
  8. data/app/models/email_credential.rb +2 -1
  9. data/app/models/password_credential.rb +2 -1
  10. data/app/models/user.rb +2 -1
  11. data/app/views/hello/shared/_nav_pills.html.erb +0 -2
  12. data/config/locales/hello.fr.yml +2 -4
  13. data/db/migrate/3_create_users.rb +10 -15
  14. data/lib/data/locales.yml +228 -0
  15. data/lib/generators/hello/install/install_generator.rb +8 -29
  16. data/lib/generators/hello/install/templates/initializer.rb +1 -1
  17. data/lib/generators/hello/install/templates/models/concerns/user/authorization.rb +8 -13
  18. data/lib/generators/hello/install/templates/models/user.rb +2 -1
  19. data/lib/generators/hello/users/USAGE +10 -0
  20. data/lib/generators/hello/{install/templates/users → users/templates/app}/controllers/users_controller.rb +2 -4
  21. data/lib/generators/hello/{install/templates/users → users/templates/app}/views/users/index.html.erb +1 -1
  22. data/lib/generators/hello/{install/templates/users → users/templates/app}/views/users/list.html.erb +3 -1
  23. data/lib/generators/hello/{install/templates/users → users/templates/app}/views/users/new.html.erb +2 -2
  24. data/lib/generators/hello/{install/templates/users → users/templates/app}/views/users/show.html.erb +0 -0
  25. data/lib/generators/hello/users/users_generator.rb +21 -0
  26. data/lib/hello/business/registration/sign_up.rb +30 -122
  27. data/lib/hello/locales.rb +1 -232
  28. data/lib/hello/rails_active_record/access.rb +12 -10
  29. data/lib/hello/rails_active_record/credential.rb +22 -18
  30. data/lib/hello/rails_active_record/email_credential.rb +12 -20
  31. data/lib/hello/rails_active_record/password_credential.rb +11 -32
  32. data/lib/hello/rails_active_record/user.rb +75 -54
  33. data/lib/hello/rails_controller.rb +1 -3
  34. data/lib/hello/rails_controller/restrict_by_role.rb +2 -2
  35. data/lib/hello/version.rb +1 -1
  36. data/spec/bdd/hello/authentication/classic_sign_in_spec.rb +2 -2
  37. data/spec/bdd/hello/internalionalization/anyone_can_change_their_locale/change_locale_on_the_sign_in_form_spec.rb +1 -1
  38. data/spec/bdd/hello/management/manage_email_credentials/manage_email_credentials_emails_page_spec.rb +7 -7
  39. data/spec/bdd/hello/management/manage_password_credentials/manage_password_forgot_password_spec.rb +1 -1
  40. data/spec/bdd/hello/management/manage_password_credentials/manage_password_reset_password_spec.rb +1 -1
  41. data/spec/bdd/hello/management/manage_profile/manage_profile_page_spec.rb +0 -2
  42. data/spec/bdd/hello/other/create_user_spec.rb +1 -3
  43. data/spec/bdd/hello/other/impersonate_user_spec.rb +1 -2
  44. data/spec/bdd/hello/other/list_users_spec.rb +2 -4
  45. data/spec/bdd/hello/registration/classic_sign_up_spec.rb +3 -4
  46. data/spec/bdd/hello/support.rb +0 -4
  47. data/spec/business/hello/registration/sign_up_spec.rb +10 -2
  48. data/spec/controllers/authentication_spec.rb +3 -3
  49. data/spec/models/create_and_destroy/email_credential_create_and_destroy_spec.rb +81 -0
  50. data/spec/models/create_and_destroy/password_credential_create_and_destroy_spec.rb +60 -0
  51. data/spec/models/create_and_destroy/user_create_and_destroy_spec.rb +124 -0
  52. data/spec/models/credential_spec.rb +12 -3
  53. data/spec/models/email_credential_spec.rb +1 -2
  54. data/spec/models/password_credential_spec.rb +1 -2
  55. data/spec/models/user_spec.rb +87 -27
  56. data/spec/requests/forgot_password_spec.rb +1 -1
  57. data/spec/support/factories.rb +10 -14
  58. data/spec/support/helpers/given.rb +8 -16
  59. data/spec/support/helpers/when.rb +0 -1
  60. metadata +42 -38
  61. data/lib/generators/hello/from_devise/USAGE +0 -8
  62. data/lib/generators/hello/from_devise/from_devise_generator.rb +0 -13
  63. data/lib/generators/hello/from_devise/templates/from_devise.migration.rb +0 -39
  64. data/spec/models/hello/sign_up_model_spec.rb +0 -64
@@ -2,8 +2,17 @@ require 'spec_helper'
2
2
 
3
3
  describe Credential do
4
4
  example 'Validations' do
5
- subject.valid?
6
- expect(subject.errors.messages).to eq(user: ["can't be blank"],
7
- type: ['is not included in the list'])
5
+ expect(subject.valid?).to eq(true)
6
+ expect(subject.errors.messages).to eq({})
7
+ end
8
+
9
+ example 'Saving Validations' do
10
+ # can save without a user
11
+ expect(subject.save).to eq(true)
12
+ expect(subject.errors.messages).to eq({})
13
+
14
+ # cannot update without a user
15
+ expect(subject.save).to eq(false)
16
+ expect(subject.errors.messages).to eq({:user => ["can't be blank"]})
8
17
  end
9
18
  end
@@ -3,8 +3,7 @@ require 'spec_helper'
3
3
  describe EmailCredential do
4
4
  example 'Validations' do
5
5
  subject.valid?
6
- expect(subject.errors.messages).to eq(user: ["can't be blank"],
7
- email: ["can't be blank"])
6
+ expect(subject.errors.messages).to eq(email: ["can't be blank"])
8
7
  end
9
8
 
10
9
  context 'Fields' do
@@ -4,8 +4,7 @@ describe PasswordCredential do
4
4
  describe 'validations' do
5
5
  it 'presence of name' do
6
6
  subject.valid?
7
- expect(subject.errors.messages).to eq(user: ["can't be blank"],
8
- password: ["can't be blank"])
7
+ expect(subject.errors.messages).to eq(password: ["can't be blank"])
9
8
  end
10
9
  end
11
10
 
@@ -18,15 +18,30 @@ describe User do
18
18
  end
19
19
 
20
20
  describe 'validations' do
21
- it 'validations' do
21
+ it 'creating' do
22
22
  @user.valid?
23
- # city is only here because we need to test code customization, and this is how we are currently testing it
24
23
  expect(@user.errors.messages).to eq(
25
- name: ["can't be blank"],
26
- locale: ["can't be blank", 'is not included in the list'],
27
- time_zone: ["can't be blank", 'is not included in the list'],
28
- city: ["can't be blank"],
29
- username: ["can't be blank", 'is invalid', 'is too short (minimum is 4 characters)']
24
+ :name=>["can't be blank"],
25
+ :locale=>["can't be blank", 'is not included in the list'],
26
+ :time_zone=>["can't be blank", 'is not included in the list'],
27
+ :username=>["can't be blank"],
28
+ :email=>["can't be blank"],
29
+ :password=>["can't be blank"],
30
+ :email_credentials=>["is too short (minimum is 1 character)"],
31
+ )
32
+ end
33
+
34
+ it 'updating' do
35
+ @user = create(:user)
36
+ attrs = attributes_for(:user)
37
+ attrs.each { |k, _v| attrs[k] = nil }
38
+ expect(@user.update(attrs)).to eq(false)
39
+ expect(@user.errors.messages).to eq(
40
+ :name=>["can't be blank"],
41
+ :locale=>["can't be blank", 'is not included in the list'],
42
+ :time_zone=>["can't be blank", 'is not included in the list'],
43
+ :username=>["can't be blank"],
44
+ :role=>["can't be blank"],
30
45
  )
31
46
  end
32
47
  end
@@ -42,20 +57,75 @@ describe User do
42
57
  describe 'username' do
43
58
  describe 'validations' do
44
59
  describe 'uniqueness' do
45
- def test_uniqueness(a, b)
46
- create(:user, username: a)
47
- user = build(:user, username: b)
48
- user.valid?
49
- # expect(user.errors.messages).to eq(1)
50
- expect(user.errors.added?(:username, :taken)).to eq(true)
60
+ def expects_uniqueness_to_be_applied(a, b)
61
+ user1 = build(:user)
62
+ user1.username = a
63
+ user1.save!
64
+
65
+ user2 = build(:user)
66
+ user2.username = b
67
+ user2.valid?
68
+ expect(user2.errors.messages).to eq({:username=>["has already been taken"]})
51
69
  end
52
70
 
53
- it 'normal case' do
54
- test_uniqueness('james', 'james')
71
+ def expects_uniqueness_to_be_ignored(a, b)
72
+ user1 = build(:user)
73
+ user1.username = a
74
+ user1.save!
75
+
76
+ user2 = build(:user)
77
+ user2.username = b
78
+ user2.save!
79
+ expect(user2.errors.messages).to eq({})
55
80
  end
56
81
 
57
- it 'downcase' do
58
- test_uniqueness('JaMeS', 'james')
82
+ describe "config" do
83
+ subject { build(:user, username: '', email: 'foo@bar.com') }
84
+ after do
85
+ reload_initializer!
86
+ end
87
+
88
+ describe 'config.username_presence = true' do
89
+ before do
90
+ Hello.configure { |config| config.username_presence = true }
91
+ end
92
+
93
+ it 'requires a username' do
94
+ expect(subject).to be_invalid
95
+ expect(subject.errors.messages).to eq({:username=>["can't be blank"]})
96
+ end
97
+
98
+ it 'expects uniqueness to be applied for normal-cased usernames' do
99
+ expects_uniqueness_to_be_applied('james', 'james')
100
+ end
101
+
102
+ it 'expects uniqueness to be applied for down-cased usernames' do
103
+ expects_uniqueness_to_be_applied('JaMeS', 'james')
104
+ end
105
+ end
106
+
107
+ describe 'config.username_presence = false' do
108
+ before do
109
+ Hello.configure { |config| config.username_presence = false }
110
+ end
111
+
112
+ it 'does not require a username' do
113
+ expect(subject).to be_valid
114
+ expect(subject.errors.messages).to eq({})
115
+ end
116
+
117
+ it 'expects uniqueness to be applied for normal-cased usernames' do
118
+ expects_uniqueness_to_be_applied('james', 'james')
119
+ end
120
+
121
+ it 'expects uniqueness to be applied for down-cased usernames' do
122
+ expects_uniqueness_to_be_applied('JaMeS', 'james')
123
+ end
124
+
125
+ it 'expects uniqueness to be ignored for blank usernames' do
126
+ expects_uniqueness_to_be_ignored('', '')
127
+ end
128
+ end
59
129
  end
60
130
  end
61
131
 
@@ -79,15 +149,5 @@ describe User do
79
149
  end
80
150
  end
81
151
  end
82
-
83
- describe 'private ._make_up_new_username' do
84
- let(:model) { build(:user, username: '') }
85
-
86
- it 'works when called' do
87
- a_username = model.send(:_make_up_new_username)
88
- expect(a_username.length).to eq(32)
89
- expect(model.username).to eq('')
90
- end
91
- end
92
152
  end
93
153
  end
@@ -23,7 +23,7 @@ RSpec.describe 'Forgot Password', type: :request do
23
23
  end
24
24
 
25
25
  it 'Success' do
26
- given_I_have_an_email_credential
26
+ given_I_have_a_user
27
27
 
28
28
  forgot_password_params = { login: 'foobar', password: '1234' }
29
29
  post '/hello/passwords/forgot.json', forgot_password: forgot_password_params
@@ -1,41 +1,37 @@
1
1
  # Read about factories at https://github.com/thoughtbot/factory_girl
2
- # https://github.com/thoughtbot/factory_girl/blob/webmaster/GETTING_STARTED.md
2
+ # https://github.com/thoughtbot/factory_girl/blob/master/GETTING_STARTED.md
3
3
 
4
4
  # https://github.com/stympy/faker#usage
5
5
 
6
6
  FactoryGirl.define do
7
+
7
8
  factory :user do
8
9
  name { Faker::Name.name }
9
- city { Faker::Address.city } # for dummy's customized sign up
10
10
  locale 'en'
11
11
  time_zone Time.zone.name
12
12
  role 'user'
13
-
14
13
  username { Faker::Internet.user_name(name, %w(-_)) }
14
+ email { "#{username}@provider.com" }
15
+ password '1234'
15
16
 
16
- # TODO: improve this
17
- after(:build) { |user| build(:password_credential, user: user) }
18
- after(:create) { |user| create(:password_credential, user: user) }
17
+ trait :without_credentials do
18
+ email nil
19
+ password nil
20
+ end
19
21
 
20
- factory :webmaster_user do
21
- name 'Admin'
22
+ factory :user_webmaster do
23
+ name 'Webmaster'
22
24
  role 'webmaster'
23
- username 'webmaster'
24
- factory :user_webmaster do
25
- name 'Webmaster'
26
- end
27
25
  end
28
26
 
29
27
  factory :user_onboarding do
30
28
  name 'Onboarding'
31
29
  role 'onboarding'
32
- username 'onboarding'
33
30
  end
34
31
 
35
32
  factory :user_user do
36
33
  name 'User'
37
34
  role 'user'
38
- username 'user'
39
35
  end
40
36
  end
41
37
 
@@ -4,34 +4,26 @@ USER_TEST_EMAIL = 'foo@bar.com'.freeze
4
4
  USER_TEST_USERNAME = 'foobar'.freeze
5
5
 
6
6
  def given_I_have_a_classic_access_token
7
- user = create(:user, name: 'James Pinto', username: USER_TEST_USERNAME, city: 'Brasilia')
8
- create(:email_credential, user: user, email: USER_TEST_EMAIL)
7
+ user = create(:user, name: 'James Pinto', username: USER_TEST_USERNAME, email: USER_TEST_EMAIL)
9
8
  Access.create!(user: user, user_agent_string: 'testing', expires_at: 24.hours.from_now)
10
9
  end
11
10
 
12
- def given_I_have_an_email_credential
13
- user = create(:user, name: 'James Pinto', username: USER_TEST_USERNAME, city: 'Brasilia')
14
- create(:email_credential, user: user, email: USER_TEST_EMAIL)
15
- end
16
-
17
- def given_I_have_an_onboarding_password_credential
18
- user = create(:onboarding)
19
- create(:email_credential, user: user, email: USER_TEST_EMAIL)
11
+ def given_I_have_a_user
12
+ create(:user, name: 'James Pinto', email: USER_TEST_EMAIL, username: USER_TEST_USERNAME)
20
13
  end
21
14
 
22
15
  def given_I_have_a_webmaster_password_credential
23
- user = create(:webmaster_user)
24
- create(:email_credential, user: user, email: 'webmaster@bar.com')
16
+ create(:user_webmaster)
25
17
  end
26
18
 
27
- def given_I_have_an_email_credential_and_forgot_my_password
28
- credential = given_I_have_an_email_credential
29
- unencrypted_token = credential.user.password_credential.reset_verifying_token!
19
+ def given_I_have_a_user_and_forgot_my_password
20
+ user = given_I_have_a_user
21
+ unencrypted_token = user.password_credential.reset_verifying_token!
30
22
  end
31
23
 
32
24
  def given_I_am_logged_in_with_a_classic_credential
33
25
  # when_sign_up_with_standard_data(expect_welcome_mailer: true)
34
- given_I_have_an_email_credential
26
+ given_I_have_a_user
35
27
  when_sign_in_with_standard_data
36
28
  then_I_should_be_logged_in
37
29
  end
@@ -30,7 +30,6 @@ def when_sign_up_as_an_onboarding(options = {})
30
30
  fill_in 'sign_up_email', with: 'foo@bar.com'
31
31
  fill_in 'sign_up_username', with: 'foobar'
32
32
  fill_in 'sign_up_password', with: '1234'
33
- fill_in 'sign_up_city', with: 'OMG! I can customize Hello!'
34
33
  click_button 'Sign Up'
35
34
  end
36
35
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hello-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Pinto
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-06-01 00:00:00.000000000 Z
12
+ date: 2016-09-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: before_actions
@@ -17,154 +17,154 @@ dependencies:
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: '0'
20
+ version: '2.0'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: '0'
27
+ version: '2.0'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: colorize
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: '0'
34
+ version: '0.7'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: '0'
41
+ version: '0.7'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: user_agent_parser
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
46
  - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: '0'
48
+ version: '2.3'
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - "~>"
54
54
  - !ruby/object:Gem::Version
55
- version: '0'
55
+ version: '2.3'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: http_accept_language
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
60
  - - "~>"
61
61
  - !ruby/object:Gem::Version
62
- version: '0'
62
+ version: '2.0'
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - "~>"
68
68
  - !ruby/object:Gem::Version
69
- version: '0'
69
+ version: '2.0'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: rails-i18n
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
74
  - - "~>"
75
75
  - !ruby/object:Gem::Version
76
- version: '0'
76
+ version: '5.0'
77
77
  type: :runtime
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
81
  - - "~>"
82
82
  - !ruby/object:Gem::Version
83
- version: '0'
83
+ version: '5.0'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: sqlite3
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
88
  - - "~>"
89
89
  - !ruby/object:Gem::Version
90
- version: '0'
90
+ version: '1.3'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
95
  - - "~>"
96
96
  - !ruby/object:Gem::Version
97
- version: '0'
97
+ version: '1.3'
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: rspec-rails
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
102
  - - "~>"
103
103
  - !ruby/object:Gem::Version
104
- version: '0'
104
+ version: '3.4'
105
105
  type: :development
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
109
  - - "~>"
110
110
  - !ruby/object:Gem::Version
111
- version: '0'
111
+ version: '3.4'
112
112
  - !ruby/object:Gem::Dependency
113
113
  name: capybara
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
116
  - - "~>"
117
117
  - !ruby/object:Gem::Version
118
- version: '0'
118
+ version: '2.6'
119
119
  type: :development
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
123
  - - "~>"
124
124
  - !ruby/object:Gem::Version
125
- version: '0'
125
+ version: '2.6'
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: email_spec
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  requirements:
130
130
  - - "~>"
131
131
  - !ruby/object:Gem::Version
132
- version: '0'
132
+ version: '2.0'
133
133
  type: :development
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
137
  - - "~>"
138
138
  - !ruby/object:Gem::Version
139
- version: '0'
139
+ version: '2.0'
140
140
  - !ruby/object:Gem::Dependency
141
141
  name: factory_girl_rails
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
144
  - - "~>"
145
145
  - !ruby/object:Gem::Version
146
- version: '0'
146
+ version: '4.5'
147
147
  type: :development
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
151
  - - "~>"
152
152
  - !ruby/object:Gem::Version
153
- version: '0'
153
+ version: '4.5'
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: faker
156
156
  requirement: !ruby/object:Gem::Requirement
157
157
  requirements:
158
158
  - - "~>"
159
159
  - !ruby/object:Gem::Version
160
- version: '0'
160
+ version: '1.6'
161
161
  type: :development
162
162
  prerelease: false
163
163
  version_requirements: !ruby/object:Gem::Requirement
164
164
  requirements:
165
165
  - - "~>"
166
166
  - !ruby/object:Gem::Version
167
- version: '0'
167
+ version: '1.6'
168
168
  - !ruby/object:Gem::Dependency
169
169
  name: codeclimate-test-reporter
170
170
  requirement: !ruby/object:Gem::Requirement
@@ -185,14 +185,14 @@ dependencies:
185
185
  requirements:
186
186
  - - "~>"
187
187
  - !ruby/object:Gem::Version
188
- version: '0'
188
+ version: '0.1'
189
189
  type: :development
190
190
  prerelease: false
191
191
  version_requirements: !ruby/object:Gem::Requirement
192
192
  requirements:
193
193
  - - "~>"
194
194
  - !ruby/object:Gem::Version
195
- version: '0'
195
+ version: '0.1'
196
196
  - !ruby/object:Gem::Dependency
197
197
  name: bcrypt
198
198
  requirement: !ruby/object:Gem::Requirement
@@ -227,14 +227,14 @@ dependencies:
227
227
  requirements:
228
228
  - - "~>"
229
229
  - !ruby/object:Gem::Version
230
- version: '0'
230
+ version: '2.4'
231
231
  type: :development
232
232
  prerelease: false
233
233
  version_requirements: !ruby/object:Gem::Requirement
234
234
  requirements:
235
235
  - - "~>"
236
236
  - !ruby/object:Gem::Version
237
- version: '0'
237
+ version: '2.4'
238
238
  description: Provides a set of valuable features for Registration, Authentication,
239
239
  Management and Internationalization.
240
240
  email:
@@ -310,11 +310,9 @@ files:
310
310
  - db/migrate/1_create_credentials.rb
311
311
  - db/migrate/2_create_accesses.rb
312
312
  - db/migrate/3_create_users.rb
313
+ - lib/data/locales.yml
313
314
  - lib/generators/hello/concerns/USAGE
314
315
  - lib/generators/hello/concerns/concerns_generator.rb
315
- - lib/generators/hello/from_devise/USAGE
316
- - lib/generators/hello/from_devise/from_devise_generator.rb
317
- - lib/generators/hello/from_devise/templates/from_devise.migration.rb
318
316
  - lib/generators/hello/install/USAGE
319
317
  - lib/generators/hello/install/install_generator.rb
320
318
  - lib/generators/hello/install/templates/application.html.erb
@@ -326,13 +324,15 @@ files:
326
324
  - lib/generators/hello/install/templates/onboarding/onboarding_controller.rb
327
325
  - lib/generators/hello/install/templates/root/index.html.erb
328
326
  - lib/generators/hello/install/templates/root/root_controller.rb
329
- - lib/generators/hello/install/templates/users/controllers/users_controller.rb
330
- - lib/generators/hello/install/templates/users/views/users/index.html.erb
331
- - lib/generators/hello/install/templates/users/views/users/list.html.erb
332
- - lib/generators/hello/install/templates/users/views/users/new.html.erb
333
- - lib/generators/hello/install/templates/users/views/users/show.html.erb
334
327
  - lib/generators/hello/locales/USAGE
335
328
  - lib/generators/hello/locales/locales_generator.rb
329
+ - lib/generators/hello/users/USAGE
330
+ - lib/generators/hello/users/templates/app/controllers/users_controller.rb
331
+ - lib/generators/hello/users/templates/app/views/users/index.html.erb
332
+ - lib/generators/hello/users/templates/app/views/users/list.html.erb
333
+ - lib/generators/hello/users/templates/app/views/users/new.html.erb
334
+ - lib/generators/hello/users/templates/app/views/users/show.html.erb
335
+ - lib/generators/hello/users/users_generator.rb
336
336
  - lib/generators/hello/views/USAGE
337
337
  - lib/generators/hello/views/views_generator.rb
338
338
  - lib/hello-rails.rb
@@ -436,9 +436,11 @@ files:
436
436
  - spec/fixtures/hello/password_mailer/sign_up
437
437
  - spec/mailers/hello/mailer_spec.rb
438
438
  - spec/models/access_spec.rb
439
+ - spec/models/create_and_destroy/email_credential_create_and_destroy_spec.rb
440
+ - spec/models/create_and_destroy/password_credential_create_and_destroy_spec.rb
441
+ - spec/models/create_and_destroy/user_create_and_destroy_spec.rb
439
442
  - spec/models/credential_spec.rb
440
443
  - spec/models/email_credential_spec.rb
441
- - spec/models/hello/sign_up_model_spec.rb
442
444
  - spec/models/password_credential_spec.rb
443
445
  - spec/models/user_spec.rb
444
446
  - spec/others/configuration_spec.rb
@@ -554,9 +556,11 @@ test_files:
554
556
  - spec/fixtures/hello/password_mailer/sign_up
555
557
  - spec/mailers/hello/mailer_spec.rb
556
558
  - spec/models/access_spec.rb
559
+ - spec/models/create_and_destroy/email_credential_create_and_destroy_spec.rb
560
+ - spec/models/create_and_destroy/password_credential_create_and_destroy_spec.rb
561
+ - spec/models/create_and_destroy/user_create_and_destroy_spec.rb
557
562
  - spec/models/credential_spec.rb
558
563
  - spec/models/email_credential_spec.rb
559
- - spec/models/hello/sign_up_model_spec.rb
560
564
  - spec/models/password_credential_spec.rb
561
565
  - spec/models/user_spec.rb
562
566
  - spec/others/configuration_spec.rb