mirror of
https://github.com/internetee/registry.git
synced 2025-06-07 21:25:39 +02:00
Merge branch 'master' into registry-790
This commit is contained in:
commit
3d51a93f95
104 changed files with 728 additions and 557 deletions
2
test/fixtures/contacts.yml
vendored
2
test/fixtures/contacts.yml
vendored
|
@ -14,7 +14,7 @@ william: &william
|
|||
name: William
|
||||
email: william@inbox.test
|
||||
phone: '+555.555'
|
||||
fax: +555.555
|
||||
fax: '+666.6'
|
||||
ident: 1234
|
||||
ident_type: priv
|
||||
ident_country_code: US
|
||||
|
|
11
test/fixtures/registrars.yml
vendored
11
test/fixtures/registrars.yml
vendored
|
@ -40,13 +40,4 @@ complete:
|
|||
accounting_customer_code: US0001
|
||||
language: en
|
||||
vat_no: US12345
|
||||
vat_rate: 0.05
|
||||
|
||||
not_in_use:
|
||||
name: any
|
||||
reg_no: any
|
||||
code: any
|
||||
email: any@example.com
|
||||
country_code: US
|
||||
accounting_customer_code: any
|
||||
language: en
|
||||
vat_rate: 0.05
|
5
test/fixtures/users.yml
vendored
5
test/fixtures/users.yml
vendored
|
@ -1,6 +1,6 @@
|
|||
api_bestnames:
|
||||
username: test_bestnames
|
||||
password: testtest
|
||||
plain_text_password: testtest
|
||||
type: ApiUser
|
||||
registrar: bestnames
|
||||
active: true
|
||||
|
@ -9,7 +9,7 @@ api_bestnames:
|
|||
|
||||
api_goodnames:
|
||||
username: test_goodnames
|
||||
password: testtest
|
||||
plain_text_password: testtest
|
||||
type: ApiUser
|
||||
registrar: goodnames
|
||||
active: true
|
||||
|
@ -18,6 +18,7 @@ api_goodnames:
|
|||
|
||||
admin:
|
||||
username: test
|
||||
encrypted_password: <%= Devise::Encryptor.digest(AdminUser, 'testtest') %>
|
||||
type: AdminUser
|
||||
country_code: US
|
||||
roles:
|
||||
|
|
33
test/integration/epp/login/password_change_test.rb
Normal file
33
test/integration/epp/login/password_change_test.rb
Normal file
|
@ -0,0 +1,33 @@
|
|||
require 'test_helper'
|
||||
|
||||
class EppLoginPasswordChangeTest < ActionDispatch::IntegrationTest
|
||||
def test_password_change
|
||||
request_xml = <<-XML
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="https://epp.tld.ee/schema/epp-ee-1.0.xsd">
|
||||
<command>
|
||||
<login>
|
||||
<clID>test_bestnames</clID>
|
||||
<pw>testtest</pw>
|
||||
<newPW>new-password</newPW>
|
||||
<options>
|
||||
<version>1.0</version>
|
||||
<lang>en</lang>
|
||||
</options>
|
||||
<svcs>
|
||||
<objURI>https://epp.tld.ee/schema/domain-eis-1.0.xsd</objURI>
|
||||
<objURI>https://epp.tld.ee/schema/contact-ee-1.1.xsd</objURI>
|
||||
<objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
|
||||
<objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
|
||||
</svcs>
|
||||
</login>
|
||||
</command>
|
||||
</epp>
|
||||
XML
|
||||
|
||||
post '/epp/session/login', { frame: request_xml }, { 'HTTP_COOKIE' => 'session=new_session_id' }
|
||||
assert_equal 'new-password', users(:api_bestnames).plain_text_password
|
||||
assert_equal '1000', Nokogiri::XML(response.body).at_css('result')[:code]
|
||||
assert_equal 1, Nokogiri::XML(response.body).css('result').size
|
||||
end
|
||||
end
|
25
test/system/admin_area/api_users/new_test.rb
Normal file
25
test/system/admin_area/api_users/new_test.rb
Normal file
|
@ -0,0 +1,25 @@
|
|||
require 'test_helper'
|
||||
|
||||
class AdminAreaNewApiUserTest < ApplicationSystemTestCase
|
||||
setup do
|
||||
sign_in users(:admin)
|
||||
end
|
||||
|
||||
def test_new_api_user_creation_with_required_params
|
||||
visit admin_api_users_url
|
||||
click_link_or_button 'New API user'
|
||||
|
||||
fill_in 'Username', with: 'newtest'
|
||||
fill_in 'Password', with: 'testtest'
|
||||
find('#api_user_registrar_id', visible: false).set(registrars(:bestnames).id)
|
||||
|
||||
assert_difference 'ApiUser.count' do
|
||||
click_link_or_button 'Save'
|
||||
end
|
||||
|
||||
assert_current_path admin_api_user_path(ApiUser.last)
|
||||
assert_text 'Record created'
|
||||
assert_text 'Username newtest'
|
||||
assert_text 'Password testtest'
|
||||
end
|
||||
end
|
22
test/system/admin_area/protected_area_test.rb
Normal file
22
test/system/admin_area/protected_area_test.rb
Normal file
|
@ -0,0 +1,22 @@
|
|||
require 'test_helper'
|
||||
|
||||
class AdminAreaProtectedAreaTest < ApplicationSystemTestCase
|
||||
def test_anonymous_user_is_asked_to_authenticate_when_navigating_to_protected_area
|
||||
visit admin_domains_url
|
||||
assert_text 'You need to sign in before continuing'
|
||||
assert_current_path new_admin_user_session_path
|
||||
end
|
||||
|
||||
def test_authenticated_user_can_access_protected_area
|
||||
sign_in users(:admin)
|
||||
visit admin_domains_url
|
||||
assert_current_path admin_domains_path
|
||||
end
|
||||
|
||||
def test_authenticated_user_is_not_asked_to_authenticate_again
|
||||
sign_in users(:admin)
|
||||
visit new_admin_user_session_url
|
||||
assert_text 'You are already signed in'
|
||||
assert_current_path admin_domains_path
|
||||
end
|
||||
end
|
44
test/system/admin_area/sign_in_test.rb
Normal file
44
test/system/admin_area/sign_in_test.rb
Normal file
|
@ -0,0 +1,44 @@
|
|||
require 'test_helper'
|
||||
|
||||
class AdminAreaSignInTest < ApplicationSystemTestCase
|
||||
setup do
|
||||
@user = users(:admin)
|
||||
end
|
||||
|
||||
def test_correct_username_and_password
|
||||
visit new_admin_user_session_url
|
||||
fill_in 'admin_user_username', with: @user.username
|
||||
fill_in 'admin_user_password', with: 'testtest'
|
||||
click_button 'Sign in'
|
||||
|
||||
assert_text 'Signed in successfully'
|
||||
assert_current_path admin_domains_path
|
||||
end
|
||||
|
||||
def test_wrong_password
|
||||
visit new_admin_user_session_url
|
||||
fill_in 'admin_user_username', with: @user.username
|
||||
fill_in 'admin_user_password', with: 'wrong'
|
||||
click_button 'Sign in'
|
||||
|
||||
assert_text 'Invalid Username or password'
|
||||
assert_current_path new_admin_user_session_path
|
||||
end
|
||||
|
||||
def test_retry_with_correct_username_and_password
|
||||
visit new_admin_user_session_url
|
||||
fill_in 'admin_user_username', with: @user.username
|
||||
fill_in 'admin_user_password', with: 'wrong'
|
||||
click_button 'Sign in'
|
||||
|
||||
assert_text 'Invalid Username or password'
|
||||
assert_current_path new_admin_user_session_path
|
||||
|
||||
fill_in 'admin_user_username', with: @user.username
|
||||
fill_in 'admin_user_password', with: 'testtest'
|
||||
click_button 'Sign in'
|
||||
|
||||
assert_text 'Signed in successfully'
|
||||
assert_current_path admin_domains_path
|
||||
end
|
||||
end
|
15
test/system/admin_area/sign_out_test.rb
Normal file
15
test/system/admin_area/sign_out_test.rb
Normal file
|
@ -0,0 +1,15 @@
|
|||
require 'test_helper'
|
||||
|
||||
class AdminAreaSignOutTest < ApplicationSystemTestCase
|
||||
setup do
|
||||
sign_in users(:admin)
|
||||
end
|
||||
|
||||
def test_logout
|
||||
visit admin_root_url
|
||||
click_on 'Sign out'
|
||||
|
||||
assert_text 'Signed out successfully'
|
||||
assert_current_path new_admin_user_session_path
|
||||
end
|
||||
end
|
25
test/system/registrar_area/protected_area_test.rb
Normal file
25
test/system/registrar_area/protected_area_test.rb
Normal file
|
@ -0,0 +1,25 @@
|
|||
require 'test_helper'
|
||||
|
||||
class RegistrarAreaProtectedAreaTest < ApplicationSystemTestCase
|
||||
def test_anonymous_user_is_asked_to_authenticate_when_navigating_to_protected_area
|
||||
visit registrar_domains_url
|
||||
assert_text 'You need to sign in before continuing'
|
||||
assert_current_path new_registrar_user_session_path
|
||||
end
|
||||
|
||||
def test_authenticated_user_can_access_protected_area
|
||||
sign_in users(:api_bestnames)
|
||||
visit registrar_domains_url
|
||||
|
||||
assert_no_text 'You need to sign in before continuing'
|
||||
assert_current_path registrar_domains_path
|
||||
end
|
||||
|
||||
def test_authenticated_user_is_not_asked_to_authenticate_again
|
||||
sign_in users(:api_bestnames)
|
||||
visit new_registrar_user_session_url
|
||||
|
||||
assert_text 'You are already signed in'
|
||||
assert_current_path registrar_root_path
|
||||
end
|
||||
end
|
|
@ -1,6 +1,6 @@
|
|||
require 'test_helper'
|
||||
|
||||
class RegistrarAreaSignInTest < JavaScriptApplicationSystemTestCase
|
||||
class RegistrarAreaMobileIDSignInTest < JavaScriptApplicationSystemTestCase
|
||||
def setup
|
||||
super
|
||||
WebMock.allow_net_connect!
|
||||
|
@ -10,7 +10,7 @@ class RegistrarAreaSignInTest < JavaScriptApplicationSystemTestCase
|
|||
@user.save
|
||||
end
|
||||
|
||||
def test_mobile_id_sign_in_page
|
||||
def test_valid_phone_number
|
||||
mock_client = Minitest::Mock.new
|
||||
mock_client.expect(:authenticate,
|
||||
OpenStruct.new(user_id_code: '1234', challenge_id: '1234'),
|
||||
|
@ -20,7 +20,7 @@ class RegistrarAreaSignInTest < JavaScriptApplicationSystemTestCase
|
|||
mock_client.expect(:session_code, 1234)
|
||||
|
||||
Digidoc::Client.stub(:new, mock_client) do
|
||||
visit registrar_login_path
|
||||
visit new_registrar_user_session_path
|
||||
|
||||
click_on 'login-with-mobile-id-btn'
|
||||
|
52
test/system/registrar_area/sign_in/password_test.rb
Normal file
52
test/system/registrar_area/sign_in/password_test.rb
Normal file
|
@ -0,0 +1,52 @@
|
|||
require 'test_helper'
|
||||
|
||||
class RegistrarAreaPasswordSignInTest < ApplicationSystemTestCase
|
||||
setup do
|
||||
@user = users(:api_bestnames)
|
||||
end
|
||||
|
||||
def test_correct_username_and_password
|
||||
login_with_correct_credentials
|
||||
assert_text 'Log out'
|
||||
assert_current_path registrar_root_path
|
||||
end
|
||||
|
||||
def test_after_successful_sign_in_super_user_sees_service_message_list
|
||||
@user.update!(roles: [ApiUser::SUPER])
|
||||
login_with_correct_credentials
|
||||
assert_current_path registrar_root_path
|
||||
end
|
||||
|
||||
def test_after_successful_sign_in_billing_user_sees_profile
|
||||
@user.update!(roles: [ApiUser::BILLING])
|
||||
login_with_correct_credentials
|
||||
assert_current_path registrar_profile_path
|
||||
end
|
||||
|
||||
def test_wrong_password
|
||||
visit new_registrar_user_session_url
|
||||
fill_in 'registrar_user_username', with: @user.username
|
||||
fill_in 'registrar_user_password', with: 'wrong'
|
||||
click_button 'Login'
|
||||
|
||||
assert_text 'No such user'
|
||||
assert_current_path new_registrar_user_session_path
|
||||
end
|
||||
|
||||
def test_inactive_user
|
||||
@user.update!(active: false)
|
||||
login_with_correct_credentials
|
||||
|
||||
assert_text 'User is not active'
|
||||
assert_current_path new_registrar_user_session_path
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def login_with_correct_credentials
|
||||
visit new_registrar_user_session_url
|
||||
fill_in 'registrar_user_username', with: @user.username
|
||||
fill_in 'registrar_user_password', with: 'testtest'
|
||||
click_button 'Login'
|
||||
end
|
||||
end
|
15
test/system/registrar_area/sign_out_test.rb
Normal file
15
test/system/registrar_area/sign_out_test.rb
Normal file
|
@ -0,0 +1,15 @@
|
|||
require 'test_helper'
|
||||
|
||||
class RegistrarAreaSignOutTest < ApplicationSystemTestCase
|
||||
setup do
|
||||
sign_in users(:api_bestnames)
|
||||
end
|
||||
|
||||
def test_logout
|
||||
visit registrar_root_url
|
||||
click_on 'Log out'
|
||||
|
||||
assert_text 'Signed out successfully'
|
||||
assert_current_path new_registrar_user_session_path
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue