Commit 49c773c23dce5f2c6b1f25064eed9e9e58f1900c
Committed by
Leandro Santos
1 parent
adeac9bc
Exists in
staging
and in
31 other branches
Refactored create admin user method
Showing
2 changed files
with
19 additions
and
13 deletions
Show diff stats
test/api/environment_test.rb
@@ -22,22 +22,13 @@ class EnvironmentTest < ActiveSupport::TestCase | @@ -22,22 +22,13 @@ class EnvironmentTest < ActiveSupport::TestCase | ||
22 | assert_nil json['settings'] | 22 | assert_nil json['settings'] |
23 | end | 23 | end |
24 | 24 | ||
25 | - def create_admin_user(env) | ||
26 | - admin_user = User.find_by(login: 'adminuser') || create_user('adminuser', :email => 'adminuser@noosfero.org', :password => 'adminuser', :password_confirmation => 'adminuser', :environment => env) | ||
27 | - admin_role = Role.find_by(name: 'admin_role') || Role.create!(:name => 'admin_role', :permissions => ['view_environment_admin_panel','edit_environment_features', 'edit_environment_design', 'manage_environment_categories', 'manage_environment_roles', 'manage_environment_trusted_sites', 'manage_environment_validators', 'manage_environment_users', 'manage_environment_organizations', 'manage_environment_templates', 'manage_environment_licenses', 'edit_appearance']) | ||
28 | - create(RoleAssignment, :accessor => admin_user.person, :role => admin_role, :resource => env) unless admin_user.person.role_assignments.map{|ra|[ra.role, ra.accessor, ra.resource]}.include?([admin_role, admin_user, env]) | ||
29 | - admin_user.activate | ||
30 | - admin_user | ||
31 | - end | ||
32 | - | ||
33 | def login_admin | 25 | def login_admin |
34 | - environment = Environment.default | ||
35 | - admin_user = create_admin_user(environment) | 26 | + # Create and activate the admin user |
27 | + admin_user = new_admin_user(Environment.default, true) | ||
36 | params = {:login => "adminuser", :password => "adminuser"} | 28 | params = {:login => "adminuser", :password => "adminuser"} |
37 | post "/api/v1/login?#{params.to_query}" | 29 | post "/api/v1/login?#{params.to_query}" |
38 | json = JSON.parse(last_response.body) | 30 | json = JSON.parse(last_response.body) |
39 | private_token = json['user']["private_token"] | 31 | private_token = json['user']["private_token"] |
40 | - assert !private_token.blank? | ||
41 | assert_equal admin_user.private_token, private_token | 32 | assert_equal admin_user.private_token, private_token |
42 | @params = {:private_token => private_token} | 33 | @params = {:private_token => private_token} |
43 | end | 34 | end |
@@ -51,6 +42,15 @@ class EnvironmentTest < ActiveSupport::TestCase | @@ -51,6 +42,15 @@ class EnvironmentTest < ActiveSupport::TestCase | ||
51 | assert_equal environment.settings, json['settings'] | 42 | assert_equal environment.settings, json['settings'] |
52 | end | 43 | end |
53 | 44 | ||
45 | + should 'not return the default environment settings for non admin users' do | ||
46 | + login_api | ||
47 | + environment = Environment.default | ||
48 | + get "/api/v1/environment/default?#{params.to_query}" | ||
49 | + json = JSON.parse(last_response.body) | ||
50 | + assert_equal environment.id, json['id'] | ||
51 | + assert_nil json['settings'] | ||
52 | + end | ||
53 | + | ||
54 | should 'return the default environment description' do | 54 | should 'return the default environment description' do |
55 | environment = Environment.default | 55 | environment = Environment.default |
56 | get "/api/v1/environment/default" | 56 | get "/api/v1/environment/default" |
test/support/factories.rb
@@ -64,11 +64,17 @@ module Noosfero::Factory | @@ -64,11 +64,17 @@ module Noosfero::Factory | ||
64 | end | 64 | end |
65 | 65 | ||
66 | ###### old stuff to be rearranged | 66 | ###### old stuff to be rearranged |
67 | - def create_admin_user(env) | 67 | + def create_admin_user(env, activate = false) |
68 | + admin_user = new_admin_user(env, activate) | ||
69 | + admin_user.login | ||
70 | + end | ||
71 | + | ||
72 | + def new_admin_user(env, activate = true) | ||
68 | admin_user = User.find_by(login: 'adminuser') || create_user('adminuser', :email => 'adminuser@noosfero.org', :password => 'adminuser', :password_confirmation => 'adminuser', :environment => env) | 73 | admin_user = User.find_by(login: 'adminuser') || create_user('adminuser', :email => 'adminuser@noosfero.org', :password => 'adminuser', :password_confirmation => 'adminuser', :environment => env) |
69 | admin_role = Role.find_by(name: 'admin_role') || Role.create!(:name => 'admin_role', :permissions => ['view_environment_admin_panel','edit_environment_features', 'edit_environment_design', 'manage_environment_categories', 'manage_environment_roles', 'manage_environment_trusted_sites', 'manage_environment_validators', 'manage_environment_users', 'manage_environment_organizations', 'manage_environment_templates', 'manage_environment_licenses', 'edit_appearance']) | 74 | admin_role = Role.find_by(name: 'admin_role') || Role.create!(:name => 'admin_role', :permissions => ['view_environment_admin_panel','edit_environment_features', 'edit_environment_design', 'manage_environment_categories', 'manage_environment_roles', 'manage_environment_trusted_sites', 'manage_environment_validators', 'manage_environment_users', 'manage_environment_organizations', 'manage_environment_templates', 'manage_environment_licenses', 'edit_appearance']) |
70 | create(RoleAssignment, :accessor => admin_user.person, :role => admin_role, :resource => env) unless admin_user.person.role_assignments.map{|ra|[ra.role, ra.accessor, ra.resource]}.include?([admin_role, admin_user, env]) | 75 | create(RoleAssignment, :accessor => admin_user.person, :role => admin_role, :resource => env) unless admin_user.person.role_assignments.map{|ra|[ra.role, ra.accessor, ra.resource]}.include?([admin_role, admin_user, env]) |
71 | - admin_user.login | 76 | + admin_user.activate if activate |
77 | + admin_user | ||
72 | end | 78 | end |
73 | 79 | ||
74 | def create_environment(domainname) | 80 | def create_environment(domainname) |