devise_masquerade 0.6.4 → 1.3.0
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.
Potentially problematic release.
This version of devise_masquerade might be problematic. Click here for more details.
- checksums.yaml +5 -5
- data/.github/FUNDING.yml +1 -0
- data/.github/workflows/brakeman-analysis.yml +44 -0
- data/.github/workflows/rubocop-analysis.yml +39 -0
- data/.gitignore +1 -2
- data/.ruby-version +1 -1
- data/.travis.yml +2 -4
- data/Gemfile +16 -10
- data/Gemfile.lock +305 -0
- data/Makefile +6 -1
- data/README.md +33 -1
- data/app/controllers/devise/masquerades_controller.rb +75 -59
- data/devise_masquerade.gemspec +5 -4
- data/features/back.feature +0 -1
- data/features/multiple_masquerading_models.feature +17 -0
- data/features/step_definitions/auth_steps.rb +1 -0
- data/features/step_definitions/back_steps.rb +18 -3
- data/features/support/env.rb +23 -4
- data/lib/devise_masquerade.rb +3 -9
- data/lib/devise_masquerade/controllers/helpers.rb +27 -8
- data/lib/devise_masquerade/controllers/url_helpers.rb +18 -4
- data/lib/devise_masquerade/models.rb +9 -0
- data/lib/devise_masquerade/models/masqueradable.rb +13 -0
- data/lib/devise_masquerade/rails.rb +14 -4
- data/lib/devise_masquerade/routes.rb +10 -8
- data/lib/devise_masquerade/version.rb +1 -1
- data/spec/controllers/admin/dashboard_controller_spec.rb +3 -4
- data/spec/controllers/dashboard_controller_spec.rb +3 -5
- data/spec/controllers/devise/masquerades_controller_spec.rb +62 -38
- data/spec/controllers/masquerades_tests_controller_spec.rb +41 -0
- data/spec/dummy/app/controllers/admin/dashboard_controller.rb +1 -2
- data/spec/dummy/app/controllers/application_controller.rb +2 -0
- data/spec/dummy/app/controllers/dashboard_controller.rb +1 -2
- data/spec/dummy/app/controllers/masquerades_tests_controller.rb +7 -0
- data/spec/dummy/app/controllers/students_controller.rb +8 -0
- data/spec/dummy/app/models/admin/user.rb +0 -7
- data/spec/dummy/app/models/student.rb +3 -0
- data/spec/dummy/app/models/user.rb +1 -10
- data/spec/dummy/app/views/admin/dashboard/index.html.erb +0 -2
- data/spec/dummy/app/views/dashboard/index.html.erb +0 -2
- data/spec/dummy/app/views/layouts/application.html.erb +7 -1
- data/spec/dummy/app/views/students/_student.html.erb +6 -0
- data/spec/dummy/app/views/students/index.html.erb +1 -0
- data/spec/dummy/app/views/users/_user.html.erb +1 -1
- data/spec/dummy/config/application.rb +2 -0
- data/spec/dummy/config/environment.rb +1 -0
- data/spec/dummy/config/routes.rb +6 -4
- data/spec/dummy/db/.gitignore +1 -0
- data/spec/dummy/db/migrate/20121119085620_devise_create_users.rb +1 -1
- data/spec/dummy/db/migrate/20140418160449_create_admin_users.rb +1 -1
- data/spec/dummy/db/migrate/20191022100000_create_students.rb +14 -0
- data/spec/dummy/db/schema.rb +37 -31
- data/spec/models/user_spec.rb +3 -30
- data/spec/orm/active_record.rb +5 -2
- data/spec/spec_helper.rb +3 -3
- data/spec/support/factories.rb +13 -9
- metadata +51 -19
- data/lib/devise_masquerade/model.rb +0 -42
- data/spec/controllers/masquerades_controller_spec.rb +0 -42
- data/spec/dummy/app/controllers/masquerades_controller.rb +0 -5
@@ -1,13 +1,6 @@
|
|
1
1
|
class Admin::User < ActiveRecord::Base
|
2
|
-
# Include default devise modules. Others available are:
|
3
|
-
# :token_authenticatable, :confirmable,
|
4
|
-
# :lockable, :timeoutable and :omniauthable
|
5
2
|
devise :database_authenticatable, :registerable,
|
6
3
|
:recoverable, :rememberable, :trackable, :validatable,
|
7
4
|
:masqueradable
|
8
|
-
|
9
|
-
# Setup accessible (or protected) attributes for your model
|
10
|
-
attr_accessible :email, :password, :password_confirmation, :remember_me
|
11
|
-
# attr_accessible :title, :body
|
12
5
|
end
|
13
6
|
|
@@ -1,12 +1,3 @@
|
|
1
1
|
class User < ActiveRecord::Base
|
2
|
-
|
3
|
-
# :token_authenticatable, :confirmable,
|
4
|
-
# :lockable, :timeoutable and :omniauthable
|
5
|
-
devise :database_authenticatable, :registerable,
|
6
|
-
:recoverable, :rememberable, :trackable, :validatable,
|
7
|
-
:masqueradable
|
8
|
-
|
9
|
-
# Setup accessible (or protected) attributes for your model
|
10
|
-
attr_accessible :email, :password, :password_confirmation, :remember_me
|
11
|
-
# attr_accessible :title, :body
|
2
|
+
devise :database_authenticatable, :validatable, :masqueradable
|
12
3
|
end
|
@@ -8,7 +8,13 @@
|
|
8
8
|
</head>
|
9
9
|
<body>
|
10
10
|
<% if signed_in? %>
|
11
|
-
|
11
|
+
<% if user_signed_in? %>
|
12
|
+
<h1 class='current_user'><%= current_user.email %></h1>
|
13
|
+
<% end %>
|
14
|
+
|
15
|
+
<% if student_signed_in? %>
|
16
|
+
<h1 class='current_student'><%= current_student.email %></h1>
|
17
|
+
<% end %>
|
12
18
|
|
13
19
|
<% if user_masquerade? %>
|
14
20
|
<%= link_to "Back masquerade", back_masquerade_path(current_user) %>
|
@@ -0,0 +1 @@
|
|
1
|
+
<%= render @students %>
|
data/spec/dummy/config/routes.rb
CHANGED
@@ -1,12 +1,14 @@
|
|
1
1
|
Dummy::Application.routes.draw do
|
2
2
|
devise_for :users, controllers: { masquerades: "users/masquerades" }
|
3
|
-
devise_for :admin_users, :
|
3
|
+
devise_for :admin_users, class_name: Admin::User.name
|
4
|
+
devise_for :students, class_name: Student.name
|
4
5
|
|
5
|
-
root :
|
6
|
+
root to: 'dashboard#index'
|
6
7
|
|
7
|
-
resources :
|
8
|
+
resources :masquerades_tests
|
9
|
+
resources :students, only: :index
|
8
10
|
|
9
11
|
namespace :admin do
|
10
|
-
root :
|
12
|
+
root to: 'dashboard#index'
|
11
13
|
end
|
12
14
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
test.sqlite3*
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class CreateStudents < ActiveRecord::Migration[5.2]
|
2
|
+
def change
|
3
|
+
create_table(:students) do |t|
|
4
|
+
t.string :email, null: false, default: ''
|
5
|
+
t.string :encrypted_password, null: false, default: ''
|
6
|
+
|
7
|
+
t.timestamps
|
8
|
+
end
|
9
|
+
|
10
|
+
add_index :students, :email, unique: true
|
11
|
+
add_index :students, :reset_password_token, unique: true
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
data/spec/dummy/db/schema.rb
CHANGED
@@ -1,52 +1,58 @@
|
|
1
|
-
# encoding: UTF-8
|
2
1
|
# This file is auto-generated from the current state of the database. Instead
|
3
2
|
# of editing this file, please use the migrations feature of Active Record to
|
4
3
|
# incrementally modify your database, and then regenerate this schema definition.
|
5
4
|
#
|
6
|
-
#
|
7
|
-
#
|
8
|
-
#
|
9
|
-
# from scratch.
|
10
|
-
#
|
5
|
+
# This file is the source Rails uses to define your schema when running `rails
|
6
|
+
# db:schema:load`. When creating a new database, `rails db:schema:load` tends to
|
7
|
+
# be faster and is potentially less error prone than running all of your
|
8
|
+
# migrations from scratch. Old migrations may fail to apply correctly if those
|
9
|
+
# migrations use external dependencies or application code.
|
11
10
|
#
|
12
|
-
# It's strongly recommended
|
11
|
+
# It's strongly recommended that you check this file into your version control system.
|
13
12
|
|
14
|
-
ActiveRecord::Schema.define(:
|
13
|
+
ActiveRecord::Schema.define(version: 2019_10_22_100000) do
|
15
14
|
|
16
|
-
create_table "admin_users", :
|
17
|
-
t.string
|
18
|
-
t.string
|
19
|
-
t.string
|
15
|
+
create_table "admin_users", force: :cascade do |t|
|
16
|
+
t.string "email", default: "", null: false
|
17
|
+
t.string "encrypted_password", default: "", null: false
|
18
|
+
t.string "reset_password_token"
|
20
19
|
t.datetime "reset_password_sent_at"
|
21
20
|
t.datetime "remember_created_at"
|
22
|
-
t.integer
|
21
|
+
t.integer "sign_in_count", default: 0
|
23
22
|
t.datetime "current_sign_in_at"
|
24
23
|
t.datetime "last_sign_in_at"
|
25
|
-
t.string
|
26
|
-
t.string
|
27
|
-
t.datetime "created_at",
|
28
|
-
t.datetime "updated_at",
|
24
|
+
t.string "current_sign_in_ip"
|
25
|
+
t.string "last_sign_in_ip"
|
26
|
+
t.datetime "created_at", null: false
|
27
|
+
t.datetime "updated_at", null: false
|
28
|
+
t.index ["email"], name: "index_admin_users_on_email", unique: true
|
29
|
+
t.index ["reset_password_token"], name: "index_admin_users_on_reset_password_token", unique: true
|
29
30
|
end
|
30
31
|
|
31
|
-
|
32
|
-
|
32
|
+
create_table "students", force: :cascade do |t|
|
33
|
+
t.string "email", default: "", null: false
|
34
|
+
t.string "encrypted_password", default: "", null: false
|
35
|
+
t.datetime "created_at", null: false
|
36
|
+
t.datetime "updated_at", null: false
|
37
|
+
t.index "\"reset_password_token\"", name: "index_students_on_reset_password_token", unique: true
|
38
|
+
t.index ["email"], name: "index_students_on_email", unique: true
|
39
|
+
end
|
33
40
|
|
34
|
-
create_table "users", :
|
35
|
-
t.string
|
36
|
-
t.string
|
37
|
-
t.string
|
41
|
+
create_table "users", force: :cascade do |t|
|
42
|
+
t.string "email", default: "", null: false
|
43
|
+
t.string "encrypted_password", default: "", null: false
|
44
|
+
t.string "reset_password_token"
|
38
45
|
t.datetime "reset_password_sent_at"
|
39
46
|
t.datetime "remember_created_at"
|
40
|
-
t.integer
|
47
|
+
t.integer "sign_in_count", default: 0
|
41
48
|
t.datetime "current_sign_in_at"
|
42
49
|
t.datetime "last_sign_in_at"
|
43
|
-
t.string
|
44
|
-
t.string
|
45
|
-
t.datetime "created_at",
|
46
|
-
t.datetime "updated_at",
|
50
|
+
t.string "current_sign_in_ip"
|
51
|
+
t.string "last_sign_in_ip"
|
52
|
+
t.datetime "created_at", null: false
|
53
|
+
t.datetime "updated_at", null: false
|
54
|
+
t.index ["email"], name: "index_users_on_email", unique: true
|
55
|
+
t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
|
47
56
|
end
|
48
57
|
|
49
|
-
add_index "users", ["email"], :name => "index_users_on_email", :unique => true
|
50
|
-
add_index "users", ["reset_password_token"], :name => "index_users_on_reset_password_token", :unique => true
|
51
|
-
|
52
58
|
end
|
data/spec/models/user_spec.rb
CHANGED
@@ -3,37 +3,10 @@ require 'spec_helper'
|
|
3
3
|
describe User do
|
4
4
|
let!(:user) { create(:user) }
|
5
5
|
|
6
|
-
describe '#
|
6
|
+
describe '#masquerade_key' do
|
7
7
|
it 'should cache special key on masquerade' do
|
8
|
-
expect(
|
9
|
-
user.
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
describe '#remove_masquerade_key' do
|
14
|
-
before { allow(SecureRandom).to receive(:urlsafe_base64) { "secure_key" } }
|
15
|
-
|
16
|
-
let(:key) { 'users:secure_key:masquerade' }
|
17
|
-
|
18
|
-
it 'should be possible to remove cached masquerade key' do
|
19
|
-
user.masquerade!
|
20
|
-
expect(Rails.cache.exist?(key)).to eq(true)
|
21
|
-
|
22
|
-
User.remove_masquerade_key!('secure_key')
|
23
|
-
expect(Rails.cache.exist?(key)).to eq(false)
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
describe '#find_by_masquerade_key' do
|
28
|
-
it 'should be possible to find user by generate masquerade key' do
|
29
|
-
user.masquerade!
|
30
|
-
|
31
|
-
allow(Rails.cache).to receive(:read).with("users:#{user.masquerade_key}:masquerade") { user.id }
|
32
|
-
allow(Rails.cache).to receive(:delete).with("users:#{user.masquerade_key}:masquerade")
|
33
|
-
|
34
|
-
new_user = User.find_by_masquerade_key(user.masquerade_key)
|
35
|
-
|
36
|
-
expect(new_user).to eq(user)
|
8
|
+
expect(user).to receive(:to_sgid).with(expires_in: 1.minute, for: 'masquerade') { "secure_key" }
|
9
|
+
user.masquerade_key
|
37
10
|
end
|
38
11
|
end
|
39
12
|
end
|
data/spec/orm/active_record.rb
CHANGED
@@ -1,5 +1,8 @@
|
|
1
1
|
ActiveRecord::Migration.verbose = false
|
2
2
|
ActiveRecord::Base.logger = Logger.new(nil)
|
3
3
|
|
4
|
-
ActiveRecord::
|
5
|
-
|
4
|
+
ActiveRecord::MigrationContext.
|
5
|
+
new(
|
6
|
+
File.expand_path("../../dummy/db/migrate/", __FILE__),
|
7
|
+
ActiveRecord::Base.connection.schema_migration
|
8
|
+
).migrate
|
data/spec/spec_helper.rb
CHANGED
@@ -6,7 +6,7 @@ require 'devise_masquerade'
|
|
6
6
|
require File.expand_path("../dummy/config/environment.rb", __FILE__)
|
7
7
|
require 'rails/test_help'
|
8
8
|
require 'rspec/rails'
|
9
|
-
require '
|
9
|
+
require 'factory_bot'
|
10
10
|
require 'database_cleaner'
|
11
11
|
|
12
12
|
Rails.backtrace_cleaner.remove_silencers!
|
@@ -18,9 +18,9 @@ RSpec.configure do |config|
|
|
18
18
|
require 'rspec/expectations'
|
19
19
|
config.include RSpec::Matchers
|
20
20
|
|
21
|
-
config.include Devise::
|
21
|
+
config.include Devise::Test::ControllerHelpers, :type => :controller
|
22
22
|
config.include Warden::Test::Helpers
|
23
|
-
config.include
|
23
|
+
config.include FactoryBot::Syntax::Methods
|
24
24
|
config.include Authentication
|
25
25
|
|
26
26
|
config.raise_errors_for_deprecations!
|
data/spec/support/factories.rb
CHANGED
@@ -1,16 +1,20 @@
|
|
1
|
-
|
2
|
-
sequence(:email) { |i| "john#{i}@example.com" }
|
3
|
-
|
1
|
+
FactoryBot.define do
|
4
2
|
factory :user do
|
5
|
-
email
|
6
|
-
password 'password'
|
7
|
-
password_confirmation 'password'
|
3
|
+
sequence(:email) { |i| "user#{i}@example.com" }
|
4
|
+
password { 'password' }
|
5
|
+
password_confirmation { 'password' }
|
8
6
|
end
|
9
7
|
|
10
8
|
factory :admin_user, :class => 'Admin::User' do
|
11
|
-
email
|
12
|
-
password 'password'
|
13
|
-
password_confirmation 'password'
|
9
|
+
sequence(:email) { |i| "admin#{i}@example.com" }
|
10
|
+
password { 'password' }
|
11
|
+
password_confirmation { 'password' }
|
12
|
+
end
|
13
|
+
|
14
|
+
factory :student do
|
15
|
+
sequence(:email) { |i| "student#{i}@example.com" }
|
16
|
+
password { 'password' }
|
17
|
+
password_confirmation { 'password' }
|
14
18
|
end
|
15
19
|
end
|
16
20
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: devise_masquerade
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexandr Korsak
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -16,42 +16,56 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 2.0.0
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 2.0.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: railties
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 5.2.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 5.2.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: devise
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 4.7.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 4.7.0
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: globalid
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 0.3.6
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 0.3.6
|
55
69
|
description: devise masquerade library
|
56
70
|
email:
|
57
71
|
- alex.korsak@gmail.com
|
@@ -59,12 +73,16 @@ executables: []
|
|
59
73
|
extensions: []
|
60
74
|
extra_rdoc_files: []
|
61
75
|
files:
|
76
|
+
- ".github/FUNDING.yml"
|
77
|
+
- ".github/workflows/brakeman-analysis.yml"
|
78
|
+
- ".github/workflows/rubocop-analysis.yml"
|
62
79
|
- ".gitignore"
|
63
80
|
- ".rspec"
|
64
81
|
- ".ruby-version"
|
65
82
|
- ".rvmrc"
|
66
83
|
- ".travis.yml"
|
67
84
|
- Gemfile
|
85
|
+
- Gemfile.lock
|
68
86
|
- Guardfile
|
69
87
|
- LICENSE.txt
|
70
88
|
- Makefile
|
@@ -74,13 +92,15 @@ files:
|
|
74
92
|
- config/environment.rb
|
75
93
|
- devise_masquerade.gemspec
|
76
94
|
- features/back.feature
|
95
|
+
- features/multiple_masquerading_models.feature
|
77
96
|
- features/step_definitions/auth_steps.rb
|
78
97
|
- features/step_definitions/back_steps.rb
|
79
98
|
- features/support/env.rb
|
80
99
|
- lib/devise_masquerade.rb
|
81
100
|
- lib/devise_masquerade/controllers/helpers.rb
|
82
101
|
- lib/devise_masquerade/controllers/url_helpers.rb
|
83
|
-
- lib/devise_masquerade/
|
102
|
+
- lib/devise_masquerade/models.rb
|
103
|
+
- lib/devise_masquerade/models/masqueradable.rb
|
84
104
|
- lib/devise_masquerade/rails.rb
|
85
105
|
- lib/devise_masquerade/routes.rb
|
86
106
|
- lib/devise_masquerade/version.rb
|
@@ -88,20 +108,24 @@ files:
|
|
88
108
|
- spec/controllers/admin/dashboard_controller_spec.rb
|
89
109
|
- spec/controllers/dashboard_controller_spec.rb
|
90
110
|
- spec/controllers/devise/masquerades_controller_spec.rb
|
91
|
-
- spec/controllers/
|
111
|
+
- spec/controllers/masquerades_tests_controller_spec.rb
|
92
112
|
- spec/dummy/Rakefile
|
93
113
|
- spec/dummy/app/controllers/admin/dashboard_controller.rb
|
94
114
|
- spec/dummy/app/controllers/application_controller.rb
|
95
115
|
- spec/dummy/app/controllers/dashboard_controller.rb
|
96
|
-
- spec/dummy/app/controllers/
|
116
|
+
- spec/dummy/app/controllers/masquerades_tests_controller.rb
|
117
|
+
- spec/dummy/app/controllers/students_controller.rb
|
97
118
|
- spec/dummy/app/controllers/users/masquerades_controller.rb
|
98
119
|
- spec/dummy/app/helpers/application_helper.rb
|
99
120
|
- spec/dummy/app/models/admin.rb
|
100
121
|
- spec/dummy/app/models/admin/user.rb
|
122
|
+
- spec/dummy/app/models/student.rb
|
101
123
|
- spec/dummy/app/models/user.rb
|
102
124
|
- spec/dummy/app/views/admin/dashboard/index.html.erb
|
103
125
|
- spec/dummy/app/views/dashboard/index.html.erb
|
104
126
|
- spec/dummy/app/views/layouts/application.html.erb
|
127
|
+
- spec/dummy/app/views/students/_student.html.erb
|
128
|
+
- spec/dummy/app/views/students/index.html.erb
|
105
129
|
- spec/dummy/app/views/users/_user.html.erb
|
106
130
|
- spec/dummy/config.ru
|
107
131
|
- spec/dummy/config/application.rb
|
@@ -120,8 +144,10 @@ files:
|
|
120
144
|
- spec/dummy/config/locales/devise.en.yml
|
121
145
|
- spec/dummy/config/locales/en.yml
|
122
146
|
- spec/dummy/config/routes.rb
|
147
|
+
- spec/dummy/db/.gitignore
|
123
148
|
- spec/dummy/db/migrate/20121119085620_devise_create_users.rb
|
124
149
|
- spec/dummy/db/migrate/20140418160449_create_admin_users.rb
|
150
|
+
- spec/dummy/db/migrate/20191022100000_create_students.rb
|
125
151
|
- spec/dummy/db/schema.rb
|
126
152
|
- spec/dummy/db/seeds.rb
|
127
153
|
- spec/dummy/public/.empty
|
@@ -131,11 +157,11 @@ files:
|
|
131
157
|
- spec/spec_helper.rb
|
132
158
|
- spec/support/authentication.rb
|
133
159
|
- spec/support/factories.rb
|
134
|
-
homepage: http://github.com/oivoodoo/devise_masquerade
|
160
|
+
homepage: http://github.com/oivoodoo/devise_masquerade
|
135
161
|
licenses:
|
136
162
|
- MIT
|
137
163
|
metadata: {}
|
138
|
-
post_install_message:
|
164
|
+
post_install_message:
|
139
165
|
rdoc_options: []
|
140
166
|
require_paths:
|
141
167
|
- lib
|
@@ -150,33 +176,37 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
150
176
|
- !ruby/object:Gem::Version
|
151
177
|
version: '0'
|
152
178
|
requirements: []
|
153
|
-
|
154
|
-
|
155
|
-
signing_key:
|
179
|
+
rubygems_version: 3.1.4
|
180
|
+
signing_key:
|
156
181
|
specification_version: 4
|
157
182
|
summary: use for login as functionallity on your admin users pages
|
158
183
|
test_files:
|
159
184
|
- features/back.feature
|
185
|
+
- features/multiple_masquerading_models.feature
|
160
186
|
- features/step_definitions/auth_steps.rb
|
161
187
|
- features/step_definitions/back_steps.rb
|
162
188
|
- features/support/env.rb
|
163
189
|
- spec/controllers/admin/dashboard_controller_spec.rb
|
164
190
|
- spec/controllers/dashboard_controller_spec.rb
|
165
191
|
- spec/controllers/devise/masquerades_controller_spec.rb
|
166
|
-
- spec/controllers/
|
192
|
+
- spec/controllers/masquerades_tests_controller_spec.rb
|
167
193
|
- spec/dummy/Rakefile
|
168
194
|
- spec/dummy/app/controllers/admin/dashboard_controller.rb
|
169
195
|
- spec/dummy/app/controllers/application_controller.rb
|
170
196
|
- spec/dummy/app/controllers/dashboard_controller.rb
|
171
|
-
- spec/dummy/app/controllers/
|
197
|
+
- spec/dummy/app/controllers/masquerades_tests_controller.rb
|
198
|
+
- spec/dummy/app/controllers/students_controller.rb
|
172
199
|
- spec/dummy/app/controllers/users/masquerades_controller.rb
|
173
200
|
- spec/dummy/app/helpers/application_helper.rb
|
174
201
|
- spec/dummy/app/models/admin.rb
|
175
202
|
- spec/dummy/app/models/admin/user.rb
|
203
|
+
- spec/dummy/app/models/student.rb
|
176
204
|
- spec/dummy/app/models/user.rb
|
177
205
|
- spec/dummy/app/views/admin/dashboard/index.html.erb
|
178
206
|
- spec/dummy/app/views/dashboard/index.html.erb
|
179
207
|
- spec/dummy/app/views/layouts/application.html.erb
|
208
|
+
- spec/dummy/app/views/students/_student.html.erb
|
209
|
+
- spec/dummy/app/views/students/index.html.erb
|
180
210
|
- spec/dummy/app/views/users/_user.html.erb
|
181
211
|
- spec/dummy/config.ru
|
182
212
|
- spec/dummy/config/application.rb
|
@@ -195,8 +225,10 @@ test_files:
|
|
195
225
|
- spec/dummy/config/locales/devise.en.yml
|
196
226
|
- spec/dummy/config/locales/en.yml
|
197
227
|
- spec/dummy/config/routes.rb
|
228
|
+
- spec/dummy/db/.gitignore
|
198
229
|
- spec/dummy/db/migrate/20121119085620_devise_create_users.rb
|
199
230
|
- spec/dummy/db/migrate/20140418160449_create_admin_users.rb
|
231
|
+
- spec/dummy/db/migrate/20191022100000_create_students.rb
|
200
232
|
- spec/dummy/db/schema.rb
|
201
233
|
- spec/dummy/db/seeds.rb
|
202
234
|
- spec/dummy/public/.empty
|