Merge branch 'qa-fix-deploy-key-test' into 'master'

Fix add_deploy_key_spec.rb

Closes gitlab-org/quality/nightly#29

See merge request gitlab-org/gitlab-ce!24311
This commit is contained in:
Lin Jen-Shin 2019-01-12 08:29:47 +00:00
commit 1161c99e5c
4 changed files with 30 additions and 25 deletions

View file

@ -113,7 +113,7 @@ export default {
<div class="gl-responsive-table-row deploy-key">
<div class="table-section section-40">
<div role="rowheader" class="table-mobile-header">{{ s__('DeployKeys|Deploy key') }}</div>
<div class="table-mobile-content">
<div class="table-mobile-content qa-key">
<strong class="title qa-key-title"> {{ deployKey.title }} </strong>
<div class="fingerprint qa-key-fingerprint">{{ deployKey.fingerprint }}</div>
</div>

View file

@ -14,8 +14,13 @@ module QA
end
view 'app/assets/javascripts/deploy_keys/components/key.vue' do
element :key_title, /class=".*qa-key-title.*"/ # rubocop:disable QA/ElementWithPattern
element :key_fingerprint, /class=".*qa-key-fingerprint.*"/ # rubocop:disable QA/ElementWithPattern
element :key
element :key_title
element :key_fingerprint
end
def add_key
click_on 'Add key'
end
def fill_key_title(title)
@ -26,8 +31,18 @@ module QA
fill_in 'deploy_key_key', with: key
end
def add_key
click_on 'Add key'
def find_fingerprint(title)
within_project_deploy_keys do
find_element(:key, title)
.find(element_selector_css(:key_fingerprint)).text
end
end
def has_key?(title, fingerprint)
within_project_deploy_keys do
find_element(:key, title)
.has_css?(element_selector_css(:key_fingerprint), text: fingerprint)
end
end
def key_title
@ -42,23 +57,11 @@ module QA
end
end
def key_titles
within_project_deploy_keys do
all_elements(:key_title)
end
end
def key_fingerprints
within_project_deploy_keys do
all_elements(:key_fingerprint)
end
end
private
def within_project_deploy_keys
wait(reload: false) do
has_css?(element_selector_css(:project_deploy_keys))
has_element?(:project_deploy_keys)
end
within_element(:project_deploy_keys) do

View file

@ -8,11 +8,7 @@ module QA
attribute :fingerprint do
Page::Project::Settings::Repository.perform do |setting|
setting.expand_deploy_keys do |key|
key_offset = key.key_titles.index do |key_title|
key_title.text == title
end
key.key_fingerprints[key_offset].text
key.find_fingerprint(title)
end
end
end

View file

@ -5,7 +5,7 @@ module QA
describe 'Deploy key creation' do
it 'user adds a deploy key' do
Runtime::Browser.visit(:gitlab, Page::Main::Login)
Page::Main::Login.act { sign_in_using_credentials }
Page::Main::Login.perform(&:sign_in_using_credentials)
key = Runtime::Key::RSA.new
deploy_key_title = 'deploy key title'
@ -16,7 +16,13 @@ module QA
resource.key = deploy_key_value
end
expect(deploy_key.fingerprint).to eq(key.fingerprint)
expect(deploy_key.fingerprint).to eq key.fingerprint
Page::Project::Settings::Repository.perform do |setting|
setting.expand_deploy_keys do |keys|
expect(keys).to have_key(deploy_key_title, key.fingerprint)
end
end
end
end
end