orthodox 0.3.5 → 0.3.6

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 (63) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -0
  3. data/README.md +3 -7
  4. data/dummy/.ruby-version +1 -1
  5. data/dummy/Gemfile +2 -2
  6. data/dummy/Gemfile.lock +111 -113
  7. data/lib/generators/authentication/templates/controllers/concerns/authentication.rb.erb +24 -24
  8. data/lib/generators/authentication/templates/controllers/sessions_controller.rb.erb +4 -4
  9. data/lib/generators/authentication/templates/controllers/tfa_sessions_controller.rb.erb +2 -2
  10. data/lib/generators/authentication/templates/controllers/tfas_controller.rb.erb +2 -2
  11. data/lib/generators/authentication/templates/helpers/otp_credentials_helper.rb +2 -2
  12. data/lib/generators/authentication/templates/javascript/tfa_forms.js +3 -5
  13. data/lib/generators/authentication/templates/models/concerns/authenticateable.rb +2 -2
  14. data/lib/generators/authentication/templates/models/concerns/otpable.rb +2 -2
  15. data/lib/generators/authentication/templates/models/concerns/password_resetable.rb +2 -2
  16. data/lib/generators/authentication/templates/models/otp_credential.rb.erb +2 -2
  17. data/lib/generators/authentication/templates/models/password_reset_token.rb +2 -2
  18. data/lib/generators/authentication/templates/models/session.rb.erb +2 -2
  19. data/lib/generators/authentication/templates/models/tfa_session.rb +2 -2
  20. data/lib/generators/authentication/templates/spec/models/otp_credential_spec.rb +2 -2
  21. data/lib/generators/authentication/templates/spec/models/password_reset_token_spec.rb +2 -2
  22. data/lib/generators/authentication/templates/spec/models/session_spec.rb.erb +10 -11
  23. data/lib/generators/authentication/templates/spec/models/tfa_session_spec.rb.erb +35 -36
  24. data/lib/generators/authentication/templates/spec/support/authentication_helpers.rb +2 -2
  25. data/lib/generators/authentication/templates/spec/system/authentication_spec.rb.erb +2 -2
  26. data/lib/generators/authentication/templates/spec/system/password_resets_spec.rb.erb +2 -2
  27. data/lib/generators/authentication/templates/spec/system/tfa_authentication_spec.rb.erb +2 -2
  28. data/lib/orthodox/version.rb +1 -1
  29. data/orthodox.gemspec +1 -2
  30. metadata +6 -52
  31. data/docs/Authenticateable/ClassMethods.html +0 -105
  32. data/docs/Authenticateable.html +0 -246
  33. data/docs/AuthenticationGenerator.html +0 -1335
  34. data/docs/AuthenticationHelpers.html +0 -194
  35. data/docs/BaseControllerGenerator.html +0 -247
  36. data/docs/CoffeescriptGenerator.html +0 -495
  37. data/docs/ControllerGenerator.html +0 -855
  38. data/docs/LayoutHelperGenerator.html +0 -397
  39. data/docs/Orthodox/Railtie.html +0 -124
  40. data/docs/Orthodox.html +0 -133
  41. data/docs/OtpCredentialsHelper.html +0 -298
  42. data/docs/Otpable.html +0 -267
  43. data/docs/PasswordResetToken.html +0 -324
  44. data/docs/PasswordResetable.html +0 -193
  45. data/docs/SassGenerator.html +0 -549
  46. data/docs/TfaSession.html +0 -476
  47. data/docs/TwoFactorAuthentication/ClassMethods.html +0 -222
  48. data/docs/TwoFactorAuthentication.html +0 -121
  49. data/docs/_config.yml +0 -1
  50. data/docs/_index.html +0 -265
  51. data/docs/class_list.html +0 -51
  52. data/docs/css/common.css +0 -1
  53. data/docs/css/full_list.css +0 -58
  54. data/docs/css/style.css +0 -496
  55. data/docs/file.README.html +0 -311
  56. data/docs/file_list.html +0 -56
  57. data/docs/frames.html +0 -17
  58. data/docs/index.html +0 -311
  59. data/docs/js/app.js +0 -314
  60. data/docs/js/full_list.js +0 -216
  61. data/docs/js/jquery.js +0 -4
  62. data/docs/method_list.html +0 -555
  63. data/docs/top-level-namespace.html +0 -112
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # Form object for authenticating <%= class_name %> records.
4
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
5
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
4
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
5
+
6
6
  class <%= class_name %>Session
7
7
 
8
8
  include ActiveModel::Model
@@ -1,7 +1,7 @@
1
1
  # Form object for handling two-factor authentication sessions
2
2
  #
3
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
4
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
3
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
4
+
5
5
  class TfaSession
6
6
  include ActiveModel::Model
7
7
  include ActiveModel::Attributes
@@ -1,5 +1,5 @@
1
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
2
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
1
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
2
+
3
3
  #
4
4
  # == Schema Information
5
5
  #
@@ -1,5 +1,5 @@
1
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
2
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
1
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
2
+
3
3
  #
4
4
  # == Schema Information
5
5
  #
@@ -1,25 +1,24 @@
1
1
  require "rails_helper"
2
2
 
3
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
4
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
3
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
5
4
  RSpec.describe <%= class_name %>Session, type: :model do
6
5
 
7
6
  context "when credentials valid" do
8
-
7
+
9
8
  let(:<%= singular_name %>) { create(:<%= singular_name %>) }
10
9
 
11
10
  before do
12
11
  subject.email = <%= singular_name %>.email
13
12
  subject.password = <%= singular_name %>.password
14
13
  end
15
-
14
+
16
15
  it { is_expected.to be_valid }
17
-
16
+
18
17
  it "sets the <%= singular_name %> attribute to the matching record" do
19
18
  subject.valid?
20
19
  expect(subject.<%= singular_name %>).to eql(<%= singular_name %>)
21
20
  end
22
-
21
+
23
22
  end
24
23
 
25
24
  context "when credentials are invalid" do
@@ -28,18 +27,18 @@ RSpec.describe <%= class_name %>Session, type: :model do
28
27
  subject.email = Faker::Internet.safe_email
29
28
  subject.password = "wrong-password"
30
29
  end
31
-
30
+
32
31
  it { is_expected.not_to be_valid }
33
-
32
+
34
33
  it "sets the <%= singular_name %> attribute to nil" do
35
34
  expect(subject.<%= singular_name %>).to be_nil
36
35
  end
37
-
36
+
38
37
  it "has errors on base" do
39
38
  subject.valid?
40
39
  expect(subject.errors[:base]).to be_present
41
40
  end
42
-
41
+
43
42
  end
44
-
43
+
45
44
  end
@@ -1,115 +1,114 @@
1
1
  require "rails_helper"
2
2
 
3
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
4
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
3
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
5
4
  RSpec.describe TfaSession, type: :model do
6
-
5
+
7
6
  let!(:<%= singular_name %>) { create(:<%= singular_name %>) }
8
-
7
+
9
8
  before do
10
9
  <%= singular_name %>.create_otp_credential!
11
10
  end
12
-
11
+
13
12
  describe "#valid?" do
14
-
13
+
15
14
  subject { TfaSession.new(record: <%= singular_name %>) }
16
-
15
+
17
16
  context "when otp correct" do
18
-
17
+
19
18
  before do
20
19
  subject.otp = <%= singular_name %>.otp_credential.send(:current_otp)
21
20
  end
22
-
21
+
23
22
  it { is_expected.to be_valid }
24
-
23
+
25
24
  end
26
25
 
27
26
  context "when otp incorrect" do
28
-
27
+
29
28
  before do
30
29
  subject.otp = "12345"
31
30
  end
32
-
31
+
33
32
  it { is_expected.to be_invalid }
34
-
33
+
35
34
  end
36
-
35
+
37
36
  context "when recovery code correct" do
38
-
37
+
39
38
  before do
40
39
  subject.recovery_code = <%= singular_name %>.otp_credential.recovery_codes.sample
41
40
  end
42
-
41
+
43
42
  it { is_expected.to be_valid }
44
-
43
+
45
44
  end
46
45
 
47
46
  context "when recovery code incorrect" do
48
-
47
+
49
48
  before do
50
49
  subject.recovery_code = "abcd-efgh"
51
50
  end
52
-
51
+
53
52
  it { is_expected.to be_invalid }
54
-
53
+
55
54
  end
56
55
  end
57
-
58
-
56
+
57
+
59
58
  describe "#otp?" do
60
-
59
+
61
60
  context "when present" do
62
61
 
63
62
  before do
64
63
  subject.otp = "12345"
65
64
  end
66
-
65
+
67
66
  it "is expected to be truthy" do
68
67
  expect(subject.otp?).to be_truthy
69
68
  end
70
-
69
+
71
70
  end
72
71
 
73
72
  context "when blank" do
74
-
73
+
75
74
  before do
76
75
  subject.otp = nil
77
76
  end
78
-
77
+
79
78
  it "is expected to be falsey" do
80
79
  expect(subject.otp?).to be_falsey
81
80
  end
82
81
 
83
82
  end
84
-
83
+
85
84
  end
86
-
85
+
87
86
  describe "#recovery_code?" do
88
-
87
+
89
88
  context "when present" do
90
89
 
91
90
  before do
92
91
  subject.recovery_code = "abcd-defg"
93
92
  end
94
-
93
+
95
94
  it "is expected to be truthy" do
96
95
  expect(subject.recovery_code?).to be_truthy
97
96
  end
98
-
97
+
99
98
  end
100
99
 
101
100
  context "when blank" do
102
-
101
+
103
102
  before do
104
103
  subject.recovery_code = nil
105
104
  end
106
-
105
+
107
106
  it "is expected to be falsey" do
108
107
  expect(subject.recovery_code?).to be_falsey
109
108
  end
110
109
 
111
110
  end
112
-
111
+
113
112
  end
114
-
113
+
115
114
  end
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
3
  # Helpers for automating sign-in and out during tests
4
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
5
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
4
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
5
+
6
6
  #
7
7
  module AuthenticationHelpers
8
8
  def sign_in(record, **options)
@@ -1,7 +1,7 @@
1
1
  require "rails_helper"
2
2
 
3
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
4
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
3
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
4
+
5
5
  RSpec.describe "<%= plural_class_name %>::Authentication", type: :system do
6
6
 
7
7
  let!(:<%= singular_name %>) { create(:<%= singular_name %>) }
@@ -1,7 +1,7 @@
1
1
  require "rails_helper"
2
2
 
3
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
4
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
3
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
4
+
5
5
  RSpec.describe "<%= plural_class_name %>::PasswordResets", type: :system do
6
6
 
7
7
  include ActiveSupport::Testing::TimeHelpers
@@ -1,7 +1,7 @@
1
1
  require "rails_helper"
2
2
 
3
- # Automatically generated by the orthodox gem (https://github.com/katanacode/orthodox)
4
- # (c) Copyright 2019 Katana Code Ltd. All Rights Reserved.
3
+ # Automatically generated by the orthodox gem (https://github.com/bodacious/orthodox)
4
+
5
5
  RSpec.describe "<%= plural_class_name %>::TfaAuthentication", type: :system do
6
6
 
7
7
  let!(:<%= singular_name %>) { create(:<%= singular_name %>) }
@@ -1,3 +1,3 @@
1
1
  module Orthodox
2
- VERSION = "0.3.5"
2
+ VERSION = "0.3.6"
3
3
  end
data/orthodox.gemspec CHANGED
@@ -21,8 +21,7 @@ Gem::Specification.new do |spec|
21
21
  spec.bindir = "exe"
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ["lib", 'lib/generators']
24
- spec.add_runtime_dependency 'rails', '>= 3.0.0'
25
24
  spec.add_runtime_dependency 'slim-rails'
26
- spec.add_development_dependency "rake", ">= 10.0"
25
+ spec.add_development_dependency "rake"
27
26
  spec.add_development_dependency "rails", ">= 5.0"
28
27
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: orthodox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
4
+ version: 0.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bodacious
@@ -9,22 +9,8 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2021-09-29 00:00:00.000000000 Z
12
+ date: 2021-10-04 00:00:00.000000000 Z
13
13
  dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: rails
16
- requirement: !ruby/object:Gem::Requirement
17
- requirements:
18
- - - ">="
19
- - !ruby/object:Gem::Version
20
- version: 3.0.0
21
- type: :runtime
22
- prerelease: false
23
- version_requirements: !ruby/object:Gem::Requirement
24
- requirements:
25
- - - ">="
26
- - !ruby/object:Gem::Version
27
- version: 3.0.0
28
14
  - !ruby/object:Gem::Dependency
29
15
  name: slim-rails
30
16
  requirement: !ruby/object:Gem::Requirement
@@ -45,14 +31,14 @@ dependencies:
45
31
  requirements:
46
32
  - - ">="
47
33
  - !ruby/object:Gem::Version
48
- version: '10.0'
34
+ version: '0'
49
35
  type: :development
50
36
  prerelease: false
51
37
  version_requirements: !ruby/object:Gem::Requirement
52
38
  requirements:
53
39
  - - ">="
54
40
  - !ruby/object:Gem::Version
55
- version: '10.0'
41
+ version: '0'
56
42
  - !ruby/object:Gem::Dependency
57
43
  name: rails
58
44
  requirement: !ruby/object:Gem::Requirement
@@ -75,6 +61,7 @@ extensions: []
75
61
  extra_rdoc_files: []
76
62
  files:
77
63
  - ".gitignore"
64
+ - ".ruby-version"
78
65
  - ".yardopts"
79
66
  - Gemfile
80
67
  - LICENSE.txt
@@ -82,39 +69,6 @@ files:
82
69
  - Rakefile
83
70
  - bin/console
84
71
  - bin/setup
85
- - docs/Authenticateable.html
86
- - docs/Authenticateable/ClassMethods.html
87
- - docs/AuthenticationGenerator.html
88
- - docs/AuthenticationHelpers.html
89
- - docs/BaseControllerGenerator.html
90
- - docs/CoffeescriptGenerator.html
91
- - docs/ControllerGenerator.html
92
- - docs/LayoutHelperGenerator.html
93
- - docs/Orthodox.html
94
- - docs/Orthodox/Railtie.html
95
- - docs/OtpCredentialsHelper.html
96
- - docs/Otpable.html
97
- - docs/PasswordResetToken.html
98
- - docs/PasswordResetable.html
99
- - docs/SassGenerator.html
100
- - docs/TfaSession.html
101
- - docs/TwoFactorAuthentication.html
102
- - docs/TwoFactorAuthentication/ClassMethods.html
103
- - docs/_config.yml
104
- - docs/_index.html
105
- - docs/class_list.html
106
- - docs/css/common.css
107
- - docs/css/full_list.css
108
- - docs/css/style.css
109
- - docs/file.README.html
110
- - docs/file_list.html
111
- - docs/frames.html
112
- - docs/index.html
113
- - docs/js/app.js
114
- - docs/js/full_list.js
115
- - docs/js/jquery.js
116
- - docs/method_list.html
117
- - docs/top-level-namespace.html
118
72
  - dummy/.gitignore
119
73
  - dummy/.ruby-version
120
74
  - dummy/Gemfile
@@ -255,7 +209,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
255
209
  - !ruby/object:Gem::Version
256
210
  version: '0'
257
211
  requirements: []
258
- rubygems_version: 3.2.15
212
+ rubygems_version: 3.2.22
259
213
  signing_key:
260
214
  specification_version: 4
261
215
  summary: Better Rails generators
@@ -1,105 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>
7
- Module: Authenticateable::ClassMethods
8
-
9
- &mdash; Orthodox
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="../css/style.css" type="text/css" />
14
-
15
- <link rel="stylesheet" href="../css/common.css" type="text/css" />
16
-
17
- <script type="text/javascript">
18
- pathId = "Authenticateable::ClassMethods";
19
- relpath = '../';
20
- </script>
21
-
22
-
23
- <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
-
25
- <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
-
27
-
28
- </head>
29
- <body>
30
- <div class="nav_wrap">
31
- <iframe id="nav" src="../class_list.html?1"></iframe>
32
- <div id="resizer"></div>
33
- </div>
34
-
35
- <div id="main" tabindex="-1">
36
- <div id="header">
37
- <div id="menu">
38
-
39
- <a href="../_index.html">Index (C)</a> &raquo;
40
- <span class='title'><span class='object_link'><a href="../Authenticateable.html" title="Authenticateable (module)">Authenticateable</a></span></span>
41
- &raquo;
42
- <span class="title">ClassMethods</span>
43
-
44
- </div>
45
-
46
- <div id="search">
47
-
48
- <a class="full_list_link" id="class_list_link"
49
- href="../class_list.html">
50
-
51
- <svg width="24" height="24">
52
- <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
- <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
- <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
- </svg>
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
60
- </div>
61
-
62
- <div id="content"><h1>Module: Authenticateable::ClassMethods
63
-
64
-
65
-
66
- </h1>
67
- <div class="box_info">
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
-
77
-
78
-
79
- <dl>
80
- <dt>Defined in:</dt>
81
- <dd>lib/generators/authentication/templates/models/concerns/authenticateable.rb</dd>
82
- </dl>
83
-
84
- </div>
85
-
86
-
87
-
88
-
89
-
90
-
91
-
92
-
93
-
94
-
95
- </div>
96
-
97
- <div id="footer">
98
- Generated on Thu Aug 13 16:36:42 2020 by
99
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
100
- 0.9.24 (ruby-2.6.6).
101
- </div>
102
-
103
- </div>
104
- </body>
105
- </html>