tiddle 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d20d30a11350b4ee5ffe3a9c6ba9640afa90c13ddf87dac2c9bf6d4160339627
4
- data.tar.gz: fcd8811ba7c94de4accbf4a7920e6903f780707d5af858c7e9a153691ec53351
3
+ metadata.gz: 30c0de8dba83157b465e1455956272549e210830cc8fe296aec744b0d046ca1c
4
+ data.tar.gz: 53652aefc5c51511b5f43df0c598ae6754e596e78a4be02aa01fa7e3dd40b95b
5
5
  SHA512:
6
- metadata.gz: baf2289d634255233c6efe5c2988789a63ca05bdf1c278be92d500e50a5009e6875b29ef15c7e1cbb9bd03f131349bcf11757938f166a329389fa3cc720a7399
7
- data.tar.gz: b972e36c75bb0b1c3bc5f21ef9977d5d9f93e595dfaef6905bd59f458079b9b4f7fb6e5068e35fd6b1aaa6e4e63740c62609db68c89bb87a0353bddf1c702721
6
+ metadata.gz: 1ac88d0e37967ad77c5f6b7ffa96646910c90be6cc8fc2d6adead616e73673b8601b2664a0851eec3fbc0eaa2e968a7b5cce7b5ffb89187ca4c77bb12ae6d875
7
+ data.tar.gz: 55ceda21948c6ca6c872b863e22da925d00014625075a77e195f877f154b00ce31fe0a4e63c18a7e0c43b015a023617b4a33c6d4c23da95bee6f6652cc371a88
@@ -15,16 +15,23 @@ jobs:
15
15
  - rails5.2
16
16
  - rails6.0
17
17
  - rails6.1
18
+ - rails7.0
18
19
  ruby:
19
- - 2.6
20
- - 2.7
21
- - 3.0
20
+ - "2.7"
21
+ - "3.0"
22
+ - "3.1"
22
23
  backend:
23
24
  - active_record
24
25
  - mongoid
25
26
  exclude:
26
27
  - gemfile: rails5.2
27
- ruby: 3.0
28
+ ruby: "3.0"
29
+ - gemfile: rails5.2
30
+ ruby: "3.1"
31
+ - gemfile: rails6.0
32
+ ruby: "3.1"
33
+ - gemfile: rails6.1
34
+ ruby: "3.1"
28
35
  name: ${{ matrix.gemfile }}, ruby ${{ matrix.ruby }}, ${{ matrix.backend }}
29
36
  runs-on: ubuntu-latest
30
37
  env:
data/.rubocop.yml CHANGED
@@ -26,7 +26,7 @@ Metrics/BlockLength:
26
26
  Metrics/MethodLength:
27
27
  Max: 15
28
28
 
29
- Gemspec/DateAssignment:
29
+ Gemspec/DeprecatedAttributeAssignment:
30
30
  Enabled: true
31
31
  Layout/SpaceBeforeBrackets:
32
32
  Enabled: true
data/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ### 1.8.0
2
+
3
+ Support different touch interval based on expiration time (Daniel André da Silva)
4
+
5
+ ### 1.7.1
6
+
7
+ Fix invalid headers generated when model is namespaced (Ariel Agne da Silveira)
8
+
9
+ Add Rails 7.0 support
10
+
11
+ Add Ruby 3.1 support
12
+
13
+ Remove Ruby 2.6 support
14
+
1
15
  ### 1.7.0
2
16
 
3
17
  Add ability to track additional info in tokens (Marcelo Silveira)
data/CONTRIBUTING.md CHANGED
@@ -4,9 +4,30 @@
4
4
  2. Run the tests:
5
5
 
6
6
  ```
7
- appraisal install
8
- rake
7
+ BUNDLE_GEMFILE=gemfiles/<PICK YOUR FAVOURITE>.gemfile rake
9
8
  ```
10
9
  3. Introduce your change. If it's a new feature then write a test for it as well.
11
10
  4. Make sure that tests are passing.
12
11
  5. Push to your fork and submit a pull request.
12
+
13
+ #### Docker for development
14
+
15
+ Alternatively you can use Docker for the development setup. This requires Docker
16
+ and Docker Compose installed.
17
+
18
+ ```
19
+ make build
20
+ make bundle
21
+ ```
22
+
23
+ And in order to run the tests and linter checks:
24
+
25
+ ```
26
+ make test
27
+ ```
28
+
29
+ After you're done, cleanup leftover containers:
30
+
31
+ ```
32
+ make cleanup
33
+ ```
data/Dockerfile ADDED
@@ -0,0 +1,12 @@
1
+ FROM ruby:3.1-alpine
2
+
3
+ RUN apk add build-base sqlite-dev tzdata git bash
4
+ RUN gem update --system && gem install bundler
5
+
6
+ WORKDIR /library
7
+
8
+ ENV BUNDLE_PATH=/vendor/bundle \
9
+ BUNDLE_BIN=/vendor/bundle/bin \
10
+ GEM_HOME=/vendor/bundle
11
+
12
+ ENV PATH="${BUNDLE_BIN}:${PATH}"
data/Makefile ADDED
@@ -0,0 +1,16 @@
1
+ .PHONY: build bundle test bash cleanup
2
+
3
+ build:
4
+ docker-compose build
5
+
6
+ bundle:
7
+ docker-compose run --rm library bundle install
8
+
9
+ test:
10
+ docker-compose run --rm library bundle exec rake
11
+
12
+ bash:
13
+ docker-compose run --rm library bash
14
+
15
+ cleanup:
16
+ docker-compose down
data/README.md CHANGED
@@ -1,7 +1,5 @@
1
1
  # Tiddle
2
2
 
3
- [![Code Climate](https://codeclimate.com/github/adamniedzielski/tiddle/badges/gpa.svg)](https://codeclimate.com/github/adamniedzielski/tiddle)
4
-
5
3
  Tiddle provides Devise strategy for token authentication in API-only Ruby on Rails applications. Its main feature is **support for multiple tokens per user**.
6
4
 
7
5
  Tiddle is lightweight and non-configurable. It does what it has to do and leaves some manual implementation to you.
@@ -83,7 +81,7 @@ end
83
81
 
84
82
  5) Send ```X-USER-EMAIL``` and ```X-USER-TOKEN``` as headers of every request which requires authentication.
85
83
 
86
- You can read more in a blog post dedicated to Tiddle - http://adamniedzielski.github.io/blog/2015/04/04/token-authentication-with-tiddle/
84
+ You can read more in a blog post dedicated to Tiddle - https://blog.sundaycoding.com/blog/2015/04/04/token-authentication-with-tiddle/
87
85
 
88
86
  ## Note on Rails session
89
87
 
@@ -93,7 +91,7 @@ The safest solution in API-only application is not to rely on Rails session at a
93
91
  config.middleware.delete ActionDispatch::Session::CookieStore
94
92
  ```
95
93
 
96
- More: http://adamniedzielski.github.io/blog/2015/04/04/token-authentication-with-tiddle/#rails-session
94
+ More: https://blog.sundaycoding.com/blog/2015/04/04/token-authentication-with-tiddle/#rails-session
97
95
 
98
96
  ## Using field other than email
99
97
 
data/Rakefile CHANGED
@@ -1,13 +1,8 @@
1
1
  require "bundler/gem_tasks"
2
2
  require 'rspec/core/rake_task'
3
3
  require 'rubocop/rake_task'
4
- require 'appraisal'
5
4
 
6
5
  RSpec::Core::RakeTask.new(spec: :rubocop)
7
6
  RuboCop::RakeTask.new(:rubocop)
8
7
 
9
- if !ENV["APPRAISAL_INITIALIZED"]
10
- task default: :appraisal
11
- else
12
- task default: :spec
13
- end
8
+ task default: :spec
@@ -0,0 +1,23 @@
1
+ version: "3.9"
2
+ services:
3
+ library:
4
+ build:
5
+ context: .
6
+ stdin_open: true
7
+ tty: true
8
+ volumes:
9
+ - ".:/library"
10
+ - vendor:/vendor
11
+ depends_on:
12
+ - redis
13
+ environment:
14
+ - REDIS_URL=redis://redis:6379/1
15
+ - BUNDLE_GEMFILE=gemfiles/rails7.0.gemfile
16
+ redis:
17
+ image: "redis:6-alpine"
18
+ command: redis-server
19
+ volumes:
20
+ - "redis:/data"
21
+ volumes:
22
+ vendor:
23
+ redis:
@@ -1,5 +1,3 @@
1
- # This file was generated by Appraisal
2
-
3
1
  source "https://rubygems.org"
4
2
 
5
3
  gem "rails", "~> 5.2.1"
@@ -1,5 +1,3 @@
1
- # This file was generated by Appraisal
2
-
3
1
  source "https://rubygems.org"
4
2
 
5
3
  gem "rails", "~> 6.0.0"
@@ -1,5 +1,3 @@
1
- # This file was generated by Appraisal
2
-
3
1
  source "https://rubygems.org"
4
2
 
5
3
  gem "rails", "~> 6.1.0"
@@ -0,0 +1,7 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem "rails", "~> 7.0.2"
4
+ gem "mongoid"
5
+ gem "sqlite3"
6
+
7
+ gemspec path: "../"
@@ -1,11 +1,17 @@
1
1
  module Tiddle
2
2
  class ModelName
3
3
  def with_underscores(model)
4
- model.model_name.to_s.underscore.upcase
4
+ colon_to_underscore(model).underscore.upcase
5
5
  end
6
6
 
7
7
  def with_dashes(model)
8
8
  with_underscores(model).dasherize
9
9
  end
10
+
11
+ private
12
+
13
+ def colon_to_underscore(model)
14
+ model.model_name.to_s.tr(':', '_')
15
+ end
10
16
  end
11
17
  end
@@ -57,15 +57,30 @@ module Devise
57
57
  end
58
58
 
59
59
  def touch_token(token)
60
- token.update_attribute(:last_used_at, Time.current) if token.last_used_at < 1.hour.ago
60
+ return unless token.last_used_at < touch_token_interval(token).ago
61
+
62
+ token.update_attribute(:last_used_at, Time.current)
61
63
  end
62
64
 
63
65
  def unexpired?(token)
64
- return true unless token.respond_to?(:expires_in)
65
- return true if token.expires_in.blank? || token.expires_in.zero?
66
+ return true if expiration_disabled?(token)
66
67
 
67
68
  Time.current <= token.last_used_at + token.expires_in
68
69
  end
70
+
71
+ def touch_token_interval(token)
72
+ return 1.hour if expiration_disabled?(token) || token.expires_in >= 24.hours
73
+
74
+ return 5.minutes if token.expires_in >= 1.hour
75
+
76
+ 1.minute
77
+ end
78
+
79
+ def expiration_disabled?(token)
80
+ !token.respond_to?(:expires_in) ||
81
+ token.expires_in.blank? ||
82
+ token.expires_in.zero?
83
+ end
69
84
  end
70
85
  end
71
86
  end
@@ -1,3 +1,3 @@
1
1
  module Tiddle
2
- VERSION = "1.7.0".freeze
2
+ VERSION = "1.8.0".freeze
3
3
  end
@@ -0,0 +1,7 @@
1
+ class NamespacedUsersController < ApplicationController
2
+ before_action :authenticate_namespaced_user!
3
+
4
+ def index
5
+ head :ok
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ module Namespace
2
+ class NamespacedUser < ActiveRecord::Base
3
+ devise :database_authenticatable, :registerable,
4
+ :recoverable, :trackable, :validatable,
5
+ :token_authenticatable
6
+
7
+ has_many :authentication_tokens, as: :authenticatable
8
+ end
9
+ end
@@ -4,6 +4,7 @@ require "active_model/railtie"
4
4
  require "active_record/railtie"
5
5
  require "action_controller/railtie"
6
6
  require "action_view/railtie"
7
+ require "action_mailer/railtie"
7
8
 
8
9
  module RailsApp
9
10
  class Application < Rails::Application
@@ -1,6 +1,8 @@
1
1
  Rails.application.routes.draw do
2
2
  devise_for :users
3
3
  devise_for :admin_users
4
+ devise_for :namespaced_user, class_name: 'Namespace::NamespacedUser'
4
5
  resources :secrets, only: [:index], defaults: { format: 'json' }
5
6
  resources :long_secrets, only: [:index], defaults: { format: 'json' }
7
+ resources :namespaced_users, only: [:index], defaults: { format: 'json' }
6
8
  end
@@ -59,6 +59,27 @@ class CreateTables < ActiveRecord::Migration[4.2]
59
59
 
60
60
  t.timestamps null: false
61
61
  end
62
+
63
+ create_table(:namespaced_users) do |t|
64
+ ## Database authenticatable
65
+ t.string :email, null: false, default: ""
66
+ t.string :encrypted_password, null: false, default: ""
67
+
68
+ ## Recoverable
69
+ t.string :reset_password_token
70
+ t.datetime :reset_password_sent_at
71
+
72
+ ## Trackable
73
+ t.integer :sign_in_count, default: 0, null: false
74
+ t.datetime :current_sign_in_at
75
+ t.datetime :last_sign_in_at
76
+ t.string :current_sign_in_ip
77
+ t.string :last_sign_in_ip
78
+
79
+ t.string :nick_name
80
+
81
+ t.timestamps null: false
82
+ end
62
83
  end
63
84
  # rubocop:enable Metrics/AbcSize
64
85
  # rubocop:enable Metrics/MethodLength
@@ -0,0 +1,7 @@
1
+ class NamespacedUsersController < ApplicationController
2
+ before_action :authenticate_namespaced_user!
3
+
4
+ def index
5
+ head :ok
6
+ end
7
+ end
@@ -0,0 +1,4 @@
1
+ module Namespace
2
+ class NamespacedUser < User
3
+ end
4
+ end
@@ -1,6 +1,8 @@
1
1
  Rails.application.routes.draw do
2
2
  devise_for :users
3
3
  devise_for :admin_users
4
+ devise_for :namespaced_user, class_name: 'Namespace::NamespacedUser'
4
5
  resources :secrets, only: [:index], defaults: { format: 'json' }
5
6
  resources :long_secrets, only: [:index], defaults: { format: 'json' }
7
+ resources :namespaced_users, only: [:index], defaults: { format: 'json' }
6
8
  end
@@ -130,6 +130,27 @@ describe "Authentication using Tiddle strategy", type: :request do
130
130
  end
131
131
  end
132
132
 
133
+ context "when the model name is composed of a namespace" do
134
+ before do
135
+ @user = Namespace::NamespacedUser.create!(
136
+ email: "test@example.com",
137
+ password: "12345678"
138
+ )
139
+ @token = Tiddle.create_and_return_token(@user, FakeRequest.new)
140
+ end
141
+
142
+ it "allows to access endpoints which require authentication" do
143
+ get(
144
+ namespaced_users_path,
145
+ headers: {
146
+ "X-NAMESPACE--NAMESPACED-USER-EMAIL" => "test@example.com",
147
+ "X-NAMESPACE--NAMESPACED-USER-TOKEN" => @token
148
+ }
149
+ )
150
+ expect(response.status).to eq 200
151
+ end
152
+ end
153
+
133
154
  describe "using field other than email" do
134
155
  before do
135
156
  Devise.setup do |config|
@@ -196,5 +217,89 @@ describe "Authentication using Tiddle strategy", type: :request do
196
217
  expect(response.status).to eq 401
197
218
  end
198
219
  end
220
+
221
+ context "with value lower than 24 hours" do
222
+ before do
223
+ @token = Tiddle.create_and_return_token(@user, FakeRequest.new, expires_in: 1.hour)
224
+ end
225
+
226
+ context "and token was last used a minute ago" do
227
+ before do
228
+ @user.authentication_tokens.last.update_attribute(:last_used_at, 1.minute.ago)
229
+ end
230
+
231
+ it "does not update last_used_at field" do
232
+ expect do
233
+ get(
234
+ secrets_path,
235
+ headers: {
236
+ "X-USER-EMAIL" => "test@example.com",
237
+ "X-USER-TOKEN" => @token
238
+ }
239
+ )
240
+ end.not_to(change { @user.authentication_tokens.last.reload.last_used_at })
241
+ end
242
+ end
243
+
244
+ context "and token was last used 5 minutes ago" do
245
+ before do
246
+ @user.authentication_tokens.last.update_attribute(:last_used_at, 5.minute.ago)
247
+ end
248
+
249
+ it "updates last_used_at field" do
250
+ expect do
251
+ get(
252
+ secrets_path,
253
+ headers: {
254
+ "X-USER-EMAIL" => "test@example.com",
255
+ "X-USER-TOKEN" => @token
256
+ }
257
+ )
258
+ end.to(change { @user.authentication_tokens.last.reload.last_used_at })
259
+ end
260
+ end
261
+ end
262
+
263
+ context "with value lower than 1 hour" do
264
+ before do
265
+ @token = Tiddle.create_and_return_token(@user, FakeRequest.new, expires_in: 30.minutes)
266
+ end
267
+
268
+ context "and token was last used less than a minute ago" do
269
+ before do
270
+ @user.authentication_tokens.last.update_attribute(:last_used_at, 30.seconds.ago)
271
+ end
272
+
273
+ it "does not update last_used_at field" do
274
+ expect do
275
+ get(
276
+ secrets_path,
277
+ headers: {
278
+ "X-USER-EMAIL" => "test@example.com",
279
+ "X-USER-TOKEN" => @token
280
+ }
281
+ )
282
+ end.not_to(change { @user.authentication_tokens.last.reload.last_used_at })
283
+ end
284
+ end
285
+
286
+ context "and token was last used a minute ago" do
287
+ before do
288
+ @user.authentication_tokens.last.update_attribute(:last_used_at, 1.minute.ago)
289
+ end
290
+
291
+ it "updates last_used_at field" do
292
+ expect do
293
+ get(
294
+ secrets_path,
295
+ headers: {
296
+ "X-USER-EMAIL" => "test@example.com",
297
+ "X-USER-TOKEN" => @token
298
+ }
299
+ )
300
+ end.to(change { @user.authentication_tokens.last.reload.last_used_at })
301
+ end
302
+ end
303
+ end
199
304
  end
200
305
  end
data/tiddle.gemspec CHANGED
@@ -16,13 +16,12 @@ Gem::Specification.new do |spec|
16
16
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
17
17
  spec.require_paths = ["lib"]
18
18
 
19
- spec.required_ruby_version = '>= 2.6.0'
19
+ spec.required_ruby_version = '>= 2.7.0'
20
20
 
21
21
  spec.add_dependency "devise", ">= 4.0.0.rc1", "< 5"
22
22
  spec.add_dependency "activerecord", ">= 5.2.0"
23
23
  spec.add_development_dependency "rake"
24
24
  spec.add_development_dependency "rspec-rails"
25
- spec.add_development_dependency "appraisal"
26
25
  spec.add_development_dependency "simplecov"
27
26
  spec.add_development_dependency "rubocop"
28
27
  spec.add_development_dependency "database_cleaner-active_record"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tiddle
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Niedzielski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-09 00:00:00.000000000 Z
11
+ date: 2023-04-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: devise
@@ -72,20 +72,6 @@ dependencies:
72
72
  - - ">="
73
73
  - !ruby/object:Gem::Version
74
74
  version: '0'
75
- - !ruby/object:Gem::Dependency
76
- name: appraisal
77
- requirement: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - ">="
80
- - !ruby/object:Gem::Version
81
- version: '0'
82
- type: :development
83
- prerelease: false
84
- version_requirements: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - ">="
87
- - !ruby/object:Gem::Version
88
- version: '0'
89
75
  - !ruby/object:Gem::Dependency
90
76
  name: simplecov
91
77
  requirement: !ruby/object:Gem::Requirement
@@ -153,17 +139,19 @@ files:
153
139
  - ".gitignore"
154
140
  - ".rspec"
155
141
  - ".rubocop.yml"
156
- - Appraisals
157
142
  - CHANGELOG.md
158
143
  - CONTRIBUTING.md
159
- - Gemfile
144
+ - Dockerfile
160
145
  - LICENSE.txt
146
+ - Makefile
161
147
  - README.md
162
148
  - Rakefile
163
149
  - config/locales/en.yml
150
+ - docker-compose.yml
164
151
  - gemfiles/rails5.2.gemfile
165
152
  - gemfiles/rails6.0.gemfile
166
153
  - gemfiles/rails6.1.gemfile
154
+ - gemfiles/rails7.0.gemfile
167
155
  - lib/tiddle.rb
168
156
  - lib/tiddle/model.rb
169
157
  - lib/tiddle/model_name.rb
@@ -173,9 +161,11 @@ files:
173
161
  - lib/tiddle/version.rb
174
162
  - spec/rails_app_active_record/app/controllers/application_controller.rb
175
163
  - spec/rails_app_active_record/app/controllers/long_secrets_controller.rb
164
+ - spec/rails_app_active_record/app/controllers/namespaced_users_controller.rb
176
165
  - spec/rails_app_active_record/app/controllers/secrets_controller.rb
177
166
  - spec/rails_app_active_record/app/models/admin_user.rb
178
167
  - spec/rails_app_active_record/app/models/authentication_token.rb
168
+ - spec/rails_app_active_record/app/models/namespace/namespaced_user.rb
179
169
  - spec/rails_app_active_record/app/models/user.rb
180
170
  - spec/rails_app_active_record/config/application.rb
181
171
  - spec/rails_app_active_record/config/boot.rb
@@ -185,9 +175,11 @@ files:
185
175
  - spec/rails_app_active_record/db/migrate/20150217000000_create_tables.rb
186
176
  - spec/rails_app_mongoid/app/controllers/application_controller.rb
187
177
  - spec/rails_app_mongoid/app/controllers/long_secrets_controller.rb
178
+ - spec/rails_app_mongoid/app/controllers/namespaced_users_controller.rb
188
179
  - spec/rails_app_mongoid/app/controllers/secrets_controller.rb
189
180
  - spec/rails_app_mongoid/app/models/admin_user.rb
190
181
  - spec/rails_app_mongoid/app/models/authentication_token.rb
182
+ - spec/rails_app_mongoid/app/models/namespace/namespaced_user.rb
191
183
  - spec/rails_app_mongoid/app/models/user.rb
192
184
  - spec/rails_app_mongoid/config/application.rb
193
185
  - spec/rails_app_mongoid/config/boot.rb
@@ -213,23 +205,25 @@ required_ruby_version: !ruby/object:Gem::Requirement
213
205
  requirements:
214
206
  - - ">="
215
207
  - !ruby/object:Gem::Version
216
- version: 2.6.0
208
+ version: 2.7.0
217
209
  required_rubygems_version: !ruby/object:Gem::Requirement
218
210
  requirements:
219
211
  - - ">="
220
212
  - !ruby/object:Gem::Version
221
213
  version: '0'
222
214
  requirements: []
223
- rubygems_version: 3.1.2
215
+ rubygems_version: 3.1.6
224
216
  signing_key:
225
217
  specification_version: 4
226
218
  summary: Token authentication for Devise which supports multiple tokens per model
227
219
  test_files:
228
220
  - spec/rails_app_active_record/app/controllers/application_controller.rb
229
221
  - spec/rails_app_active_record/app/controllers/long_secrets_controller.rb
222
+ - spec/rails_app_active_record/app/controllers/namespaced_users_controller.rb
230
223
  - spec/rails_app_active_record/app/controllers/secrets_controller.rb
231
224
  - spec/rails_app_active_record/app/models/admin_user.rb
232
225
  - spec/rails_app_active_record/app/models/authentication_token.rb
226
+ - spec/rails_app_active_record/app/models/namespace/namespaced_user.rb
233
227
  - spec/rails_app_active_record/app/models/user.rb
234
228
  - spec/rails_app_active_record/config/application.rb
235
229
  - spec/rails_app_active_record/config/boot.rb
@@ -239,9 +233,11 @@ test_files:
239
233
  - spec/rails_app_active_record/db/migrate/20150217000000_create_tables.rb
240
234
  - spec/rails_app_mongoid/app/controllers/application_controller.rb
241
235
  - spec/rails_app_mongoid/app/controllers/long_secrets_controller.rb
236
+ - spec/rails_app_mongoid/app/controllers/namespaced_users_controller.rb
242
237
  - spec/rails_app_mongoid/app/controllers/secrets_controller.rb
243
238
  - spec/rails_app_mongoid/app/models/admin_user.rb
244
239
  - spec/rails_app_mongoid/app/models/authentication_token.rb
240
+ - spec/rails_app_mongoid/app/models/namespace/namespaced_user.rb
245
241
  - spec/rails_app_mongoid/app/models/user.rb
246
242
  - spec/rails_app_mongoid/config/application.rb
247
243
  - spec/rails_app_mongoid/config/boot.rb
data/Appraisals DELETED
@@ -1,17 +0,0 @@
1
- appraise "rails5.2" do
2
- gem "rails", "~> 5.2.1"
3
- gem "mongoid", "~> 6"
4
- gem "sqlite3", "~> 1.3.13"
5
- end
6
-
7
- appraise "rails6.0" do
8
- gem "rails", "~> 6.0.0"
9
- gem "mongoid", "~> 7"
10
- gem "sqlite3"
11
- end
12
-
13
- appraise "rails6.1" do
14
- gem "rails", "~> 6.1.0"
15
- gem "mongoid"
16
- gem "sqlite3"
17
- end
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in tiddle.gemspec
4
- gemspec