Commit 1161c99e authored by Lin Jen-Shin's avatar Lin Jen-Shin

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
parents 5b1baca1 501a4319
...@@ -113,7 +113,7 @@ export default { ...@@ -113,7 +113,7 @@ export default {
<div class="gl-responsive-table-row deploy-key"> <div class="gl-responsive-table-row deploy-key">
<div class="table-section section-40"> <div class="table-section section-40">
<div role="rowheader" class="table-mobile-header">{{ s__('DeployKeys|Deploy key') }}</div> <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> <strong class="title qa-key-title"> {{ deployKey.title }} </strong>
<div class="fingerprint qa-key-fingerprint">{{ deployKey.fingerprint }}</div> <div class="fingerprint qa-key-fingerprint">{{ deployKey.fingerprint }}</div>
</div> </div>
......
...@@ -14,8 +14,13 @@ module QA ...@@ -14,8 +14,13 @@ module QA
end end
view 'app/assets/javascripts/deploy_keys/components/key.vue' do view 'app/assets/javascripts/deploy_keys/components/key.vue' do
element :key_title, /class=".*qa-key-title.*"/ # rubocop:disable QA/ElementWithPattern element :key
element :key_fingerprint, /class=".*qa-key-fingerprint.*"/ # rubocop:disable QA/ElementWithPattern element :key_title
element :key_fingerprint
end
def add_key
click_on 'Add key'
end end
def fill_key_title(title) def fill_key_title(title)
...@@ -26,31 +31,29 @@ module QA ...@@ -26,31 +31,29 @@ module QA
fill_in 'deploy_key_key', with: key fill_in 'deploy_key_key', with: key
end end
def add_key def find_fingerprint(title)
click_on 'Add key'
end
def key_title
within_project_deploy_keys do within_project_deploy_keys do
find_element(:key_title).text find_element(:key, title)
.find(element_selector_css(:key_fingerprint)).text
end end
end end
def key_fingerprint def has_key?(title, fingerprint)
within_project_deploy_keys do within_project_deploy_keys do
find_element(:key_fingerprint).text find_element(:key, title)
.has_css?(element_selector_css(:key_fingerprint), text: fingerprint)
end end
end end
def key_titles def key_title
within_project_deploy_keys do within_project_deploy_keys do
all_elements(:key_title) find_element(:key_title).text
end end
end end
def key_fingerprints def key_fingerprint
within_project_deploy_keys do within_project_deploy_keys do
all_elements(:key_fingerprint) find_element(:key_fingerprint).text
end end
end end
...@@ -58,7 +61,7 @@ module QA ...@@ -58,7 +61,7 @@ module QA
def within_project_deploy_keys def within_project_deploy_keys
wait(reload: false) do wait(reload: false) do
has_css?(element_selector_css(:project_deploy_keys)) has_element?(:project_deploy_keys)
end end
within_element(:project_deploy_keys) do within_element(:project_deploy_keys) do
......
...@@ -8,11 +8,7 @@ module QA ...@@ -8,11 +8,7 @@ module QA
attribute :fingerprint do attribute :fingerprint do
Page::Project::Settings::Repository.perform do |setting| Page::Project::Settings::Repository.perform do |setting|
setting.expand_deploy_keys do |key| setting.expand_deploy_keys do |key|
key_offset = key.key_titles.index do |key_title| key.find_fingerprint(title)
key_title.text == title
end
key.key_fingerprints[key_offset].text
end end
end end
end end
......
...@@ -5,7 +5,7 @@ module QA ...@@ -5,7 +5,7 @@ module QA
describe 'Deploy key creation' do describe 'Deploy key creation' do
it 'user adds a deploy key' do it 'user adds a deploy key' do
Runtime::Browser.visit(:gitlab, Page::Main::Login) 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 key = Runtime::Key::RSA.new
deploy_key_title = 'deploy key title' deploy_key_title = 'deploy key title'
...@@ -16,7 +16,13 @@ module QA ...@@ -16,7 +16,13 @@ module QA
resource.key = deploy_key_value resource.key = deploy_key_value
end 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 end
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment