adeia 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -0
- data/Rakefile +1 -1
- data/app/models/adeia/action.rb +4 -1
- data/app/models/adeia/element.rb +2 -0
- data/app/models/adeia/group.rb +4 -1
- data/app/models/adeia/permission.rb +27 -1
- data/app/models/adeia/token.rb +12 -0
- data/config/locales/en.yml +4 -1
- data/config/locales/fr.yml +4 -1
- data/db/migrate/20151003150524_create_adeia_tokens.rb +1 -1
- data/lib/adeia/authorization.rb +19 -8
- data/lib/adeia/controller_methods.rb +2 -2
- data/lib/adeia/controller_resource.rb +8 -5
- data/lib/adeia/database.rb +19 -8
- data/lib/adeia/engine.rb +7 -0
- data/lib/adeia/version.rb +1 -1
- data/spec/authorization_spec.rb +162 -0
- data/spec/controllers/articles_controller_spec.rb +123 -0
- data/spec/factories.rb +53 -0
- data/spec/rails_helper.rb +19 -0
- data/spec/spec_helper.rb +19 -0
- data/spec/support/spec_login_helper.rb +18 -0
- data/{test/dummy → spec/test_app}/Rakefile +0 -0
- data/{test/dummy → spec/test_app}/app/assets/javascripts/application.js +0 -0
- data/{test/dummy → spec/test_app}/app/assets/javascripts/sessions.js +0 -0
- data/{test/dummy → spec/test_app}/app/assets/stylesheets/application.css +0 -0
- data/{test/dummy → spec/test_app}/app/assets/stylesheets/scaffold.css +0 -0
- data/{test/dummy → spec/test_app}/app/assets/stylesheets/sessions.css +0 -0
- data/{test/dummy → spec/test_app}/app/controllers/application_controller.rb +0 -0
- data/{test/dummy → spec/test_app}/app/controllers/articles_controller.rb +4 -11
- data/{test/dummy → spec/test_app}/app/controllers/sessions_controller.rb +1 -1
- data/{test/dummy → spec/test_app}/app/helpers/application_helper.rb +0 -0
- data/{test/dummy → spec/test_app}/app/helpers/sessions_helper.rb +0 -0
- data/{test/dummy → spec/test_app}/app/models/article.rb +0 -0
- data/{test/dummy → spec/test_app}/app/models/user.rb +0 -0
- data/{test/dummy → spec/test_app}/app/views/articles/_form.html.erb +0 -0
- data/{test/dummy → spec/test_app}/app/views/articles/edit.html.erb +0 -0
- data/{test/dummy → spec/test_app}/app/views/articles/index.html.erb +0 -0
- data/{test/dummy → spec/test_app}/app/views/articles/new.html.erb +0 -0
- data/{test/dummy → spec/test_app}/app/views/articles/show.html.erb +0 -0
- data/{test/dummy → spec/test_app}/app/views/layouts/application.html.erb +1 -1
- data/{test/dummy → spec/test_app}/app/views/sessions/new.html.erb +0 -0
- data/{test/dummy → spec/test_app}/bin/bundle +0 -0
- data/{test/dummy → spec/test_app}/bin/rails +0 -0
- data/{test/dummy → spec/test_app}/bin/rake +0 -0
- data/{test/dummy → spec/test_app}/bin/setup +0 -0
- data/{test/dummy → spec/test_app}/config.ru +0 -0
- data/{test/dummy → spec/test_app}/config/application.rb +0 -0
- data/{test/dummy → spec/test_app}/config/boot.rb +0 -0
- data/{test/dummy → spec/test_app}/config/database.yml +0 -0
- data/{test/dummy → spec/test_app}/config/environment.rb +0 -0
- data/{test/dummy → spec/test_app}/config/environments/development.rb +0 -0
- data/{test/dummy → spec/test_app}/config/environments/production.rb +0 -0
- data/{test/dummy → spec/test_app}/config/environments/test.rb +0 -0
- data/{test/dummy → spec/test_app}/config/initializers/assets.rb +0 -0
- data/{test/dummy → spec/test_app}/config/initializers/backtrace_silencers.rb +0 -0
- data/{test/dummy → spec/test_app}/config/initializers/cookies_serializer.rb +0 -0
- data/{test/dummy → spec/test_app}/config/initializers/filter_parameter_logging.rb +0 -0
- data/{test/dummy → spec/test_app}/config/initializers/inflections.rb +0 -0
- data/{test/dummy → spec/test_app}/config/initializers/mime_types.rb +0 -0
- data/{test/dummy → spec/test_app}/config/initializers/session_store.rb +0 -0
- data/{test/dummy → spec/test_app}/config/initializers/wrap_parameters.rb +0 -0
- data/{test/dummy → spec/test_app}/config/locales/en.yml +0 -0
- data/{test/dummy → spec/test_app}/config/routes.rb +1 -1
- data/{test/dummy → spec/test_app}/config/secrets.yml +0 -0
- data/{test/dummy → spec/test_app}/db/development.sqlite3 +0 -0
- data/{test/dummy/db/migrate/20150930161522_create_users.rb → spec/test_app/db/migrate/20151012185720_create_users.rb} +1 -1
- data/{test/dummy/db/migrate/20150930161532_create_articles.rb → spec/test_app/db/migrate/20151012185726_create_articles.rb} +1 -1
- data/{test/dummy → spec/test_app}/db/schema.rb +2 -2
- data/spec/test_app/db/test.sqlite3 +0 -0
- data/{test/dummy → spec/test_app}/lib/tasks/init.rake +0 -0
- data/{test/dummy → spec/test_app}/log/development.log +1314 -0
- data/spec/test_app/log/test.log +24709 -0
- data/{test/dummy → spec/test_app}/public/404.html +0 -0
- data/{test/dummy → spec/test_app}/public/422.html +0 -0
- data/{test/dummy → spec/test_app}/public/500.html +0 -0
- data/{test/dummy → spec/test_app}/public/favicon.ico +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/007YZnzCZDb7P0xbxiEkmAM6-xSsxmYu_W7vnrvcDOs.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/1GiUoKAP-7ewZyzr_eCTMX0R8ML5Z_VN2bfQ05RAW30.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/5Lly_CA8DZvPhQV2jDQx-Y6P_y3Ygra9t5jfSlGhHDA.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/6n6yNyR4eQhIVjw5Anxur-SLgdDc_rzuMuZKj6Q4FqE.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/80nWjD2uxLBuIN1R5NawmTsgZWCB6nln8WXf_5gHri4.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/9Fw_WnCC15QnXUQZ4eYTYLOBv20at5Z5gL-WJx_QsR4.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/D4VyPOMG_wXgPRZtj-mbRdONJXbdgOZKcuwSm-lNNIA.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/DmmfrCpXtt74Hr6NO54lxyOCDv6klnDyBqeDFR7oDU8.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/HggfmBmV-rmvrvzJjqvjmDpwB2BTEQvh6krp0CcrI0U.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/OI6uxGcnsKavdWTtwDAasU3wPx8QXhzBgV0X2n1KjMQ.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/P1NOTKHlk-FIwqlw0wiyLanpgNyubwQi850S1aonsbQ.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/PKcbfub75wwU6UzvVnSMFn_6wsaaPUoXMtWTnyyh5jM.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/S4dXPkh6wlupsMUb-GvZ2Q5PwAZmplTCkViWCnVWWw0.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/UuBE6kIOXtWOmnrnywPI98bzHE-L84SteUEfzexxVtA.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/Xa5LZJIrW7sSuOWWFwCAhDkDQ71pA_cHp6H5kiTZS6E.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/eQqoU12FSWEA4BsL-PjwTnIUr1bZsu27SOzFHPomG4c.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/f3V_hqqK4rH7Z51LFX1Wk9hrWGjYABTZmgSeYvWKgLs.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/gXIpNlfbH4G7-D0grgt2EuWuwHwTymznc1rlxJ1-C0A.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/hX4wt6FzyI47gW66iiVyl2C722yfwvx3KafFEYkreEY.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/hZi1k6tpxxCGYxRe7zY74ItcOI8gZrREOpGuA8JSpGg.cache +0 -0
- data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/m36EDdApBppvyoX6m8cNCOm1eyt7pipkfASRya0sKqM.cache +1 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/nZCCAAO-XWnPS2Xr9yss0VhSONvnR3emOuEIc_b-1OY.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/pEhaat2KBd5SrT7szC_8R1_6hK17FTpvoRFkmCRSD3M.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/r5qzpye5vWgzwRnRhhSYkUslyNZ11pyYXQZqGe8o930.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/t0GCJAJcd_7X2F172TjwwDZ6rfNJc2FRbDTV5-jSqY0.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/t92Y0f7B0gH-r5W-iNadtkzgjm8gxyEyttnY6AWpdmw.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/tYGZjTIGEDMySqV7qHf43dq0_aB7TuSEhhZtN_9xW54.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/wMjI0_cDi3gmsOV5xXr-QPQOfHCB_qea8St_udeflhE.cache +0 -0
- data/{test/dummy → spec/test_app}/tmp/cache/assets/development/sprockets/v3.0/z2mRCA3647ZviK5pXi1_qLwdxkiCaoIfZj7jHoMfLiI.cache +0 -0
- data/spec/test_app/tmp/pids/server.pid +1 -0
- data/spec/validations_spec.rb +37 -0
- metadata +219 -194
- data/test/dummy/db/migrate/20151003145900_create_adeia_elements.adeia.rb +0 -10
- data/test/dummy/db/migrate/20151003145901_create_adeia_permissions.adeia.rb +0 -17
- data/test/dummy/db/migrate/20151003145902_create_adeia_groups.adeia.rb +0 -10
- data/test/dummy/db/migrate/20151003145903_create_adeia_group_users.adeia.rb +0 -11
- data/test/dummy/db/migrate/20151003150941_create_adeia_tokens.adeia.rb +0 -13
- data/test/dummy/db/migrate/20151003150942_create_adeia_actions.adeia.rb +0 -10
- data/test/dummy/db/migrate/20151003150943_create_adeia_action_permissions.adeia.rb +0 -11
- data/test/dummy/test/controllers/articles_controller_test.rb +0 -49
- data/test/dummy/test/controllers/sessions_controller_test.rb +0 -7
- data/test/dummy/test/controllers/users_controller_test.rb +0 -49
- data/test/dummy/test/fixtures/articles.yml +0 -11
- data/test/dummy/test/fixtures/users.yml +0 -9
- data/test/dummy/test/models/article_test.rb +0 -7
- data/test/dummy/test/models/user_test.rb +0 -7
@@ -1,17 +0,0 @@
|
|
1
|
-
# This migration comes from adeia (originally 20151003144208)
|
2
|
-
class CreateAdeiaPermissions < ActiveRecord::Migration
|
3
|
-
def change
|
4
|
-
create_table :adeia_permissions do |t|
|
5
|
-
t.references :owner, polymorphic: true, index: true
|
6
|
-
t.references :element, index: true, foreign_key: true
|
7
|
-
t.integer :permission_type
|
8
|
-
t.boolean :read_right
|
9
|
-
t.boolean :create_right
|
10
|
-
t.boolean :update_right
|
11
|
-
t.boolean :destroy_right
|
12
|
-
t.integer :resource_id
|
13
|
-
|
14
|
-
t.timestamps null: false
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,11 +0,0 @@
|
|
1
|
-
# This migration comes from adeia (originally 20151003144706)
|
2
|
-
class CreateAdeiaGroupUsers < ActiveRecord::Migration
|
3
|
-
def change
|
4
|
-
create_table :adeia_group_users do |t|
|
5
|
-
t.references :group, index: true, foreign_key: true
|
6
|
-
t.references :user, index: true, foreign_key: true
|
7
|
-
|
8
|
-
t.timestamps null: false
|
9
|
-
end
|
10
|
-
end
|
11
|
-
end
|
@@ -1,13 +0,0 @@
|
|
1
|
-
# This migration comes from adeia (originally 20151003150524)
|
2
|
-
class CreateAdeiaTokens < ActiveRecord::Migration
|
3
|
-
def change
|
4
|
-
create_table :adeia_tokens do |t|
|
5
|
-
t.string :token
|
6
|
-
t.boolean :valid
|
7
|
-
t.references :permission, index: true, foreign_key: true
|
8
|
-
t.date :exp_at
|
9
|
-
|
10
|
-
t.timestamps null: false
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|
@@ -1,11 +0,0 @@
|
|
1
|
-
# This migration comes from adeia (originally 20151003150806)
|
2
|
-
class CreateAdeiaActionPermissions < ActiveRecord::Migration
|
3
|
-
def change
|
4
|
-
create_table :adeia_action_permissions do |t|
|
5
|
-
t.references :action, index: true, foreign_key: true
|
6
|
-
t.references :permission, index: true, foreign_key: true
|
7
|
-
|
8
|
-
t.timestamps null: false
|
9
|
-
end
|
10
|
-
end
|
11
|
-
end
|
@@ -1,49 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
class ArticlesControllerTest < ActionController::TestCase
|
4
|
-
setup do
|
5
|
-
@article = articles(:one)
|
6
|
-
end
|
7
|
-
|
8
|
-
test "should get index" do
|
9
|
-
get :index
|
10
|
-
assert_response :success
|
11
|
-
assert_not_nil assigns(:articles)
|
12
|
-
end
|
13
|
-
|
14
|
-
test "should get new" do
|
15
|
-
get :new
|
16
|
-
assert_response :success
|
17
|
-
end
|
18
|
-
|
19
|
-
test "should create article" do
|
20
|
-
assert_difference('Article.count') do
|
21
|
-
post :create, article: { content: @article.content, title: @article.title, user_id: @article.user_id }
|
22
|
-
end
|
23
|
-
|
24
|
-
assert_redirected_to article_path(assigns(:article))
|
25
|
-
end
|
26
|
-
|
27
|
-
test "should show article" do
|
28
|
-
get :show, id: @article
|
29
|
-
assert_response :success
|
30
|
-
end
|
31
|
-
|
32
|
-
test "should get edit" do
|
33
|
-
get :edit, id: @article
|
34
|
-
assert_response :success
|
35
|
-
end
|
36
|
-
|
37
|
-
test "should update article" do
|
38
|
-
patch :update, id: @article, article: { content: @article.content, title: @article.title, user_id: @article.user_id }
|
39
|
-
assert_redirected_to article_path(assigns(:article))
|
40
|
-
end
|
41
|
-
|
42
|
-
test "should destroy article" do
|
43
|
-
assert_difference('Article.count', -1) do
|
44
|
-
delete :destroy, id: @article
|
45
|
-
end
|
46
|
-
|
47
|
-
assert_redirected_to articles_path
|
48
|
-
end
|
49
|
-
end
|
@@ -1,49 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
class UsersControllerTest < ActionController::TestCase
|
4
|
-
setup do
|
5
|
-
@user = users(:one)
|
6
|
-
end
|
7
|
-
|
8
|
-
test "should get index" do
|
9
|
-
get :index
|
10
|
-
assert_response :success
|
11
|
-
assert_not_nil assigns(:users)
|
12
|
-
end
|
13
|
-
|
14
|
-
test "should get new" do
|
15
|
-
get :new
|
16
|
-
assert_response :success
|
17
|
-
end
|
18
|
-
|
19
|
-
test "should create user" do
|
20
|
-
assert_difference('User.count') do
|
21
|
-
post :create, user: { name: @user.name, password_digest: @user.password_digest }
|
22
|
-
end
|
23
|
-
|
24
|
-
assert_redirected_to user_path(assigns(:user))
|
25
|
-
end
|
26
|
-
|
27
|
-
test "should show user" do
|
28
|
-
get :show, id: @user
|
29
|
-
assert_response :success
|
30
|
-
end
|
31
|
-
|
32
|
-
test "should get edit" do
|
33
|
-
get :edit, id: @user
|
34
|
-
assert_response :success
|
35
|
-
end
|
36
|
-
|
37
|
-
test "should update user" do
|
38
|
-
patch :update, id: @user, user: { name: @user.name, password_digest: @user.password_digest }
|
39
|
-
assert_redirected_to user_path(assigns(:user))
|
40
|
-
end
|
41
|
-
|
42
|
-
test "should destroy user" do
|
43
|
-
assert_difference('User.count', -1) do
|
44
|
-
delete :destroy, id: @user
|
45
|
-
end
|
46
|
-
|
47
|
-
assert_redirected_to users_path
|
48
|
-
end
|
49
|
-
end
|