Also test if the fingerprint is correct

This commit is contained in:
Lin Jen-Shin 2018-01-22 16:25:14 +08:00
parent 05d986065b
commit 4b1da8502f
5 changed files with 44 additions and 8 deletions

View File

@ -53,10 +53,10 @@
</i>
</div>
<div class="deploy-key-content key-list-item-info">
<strong class="title">
<strong class="title qa-key-title">
{{ deployKey.title }}
</strong>
<div class="description">
<div class="description qa-key-fingerprint">
{{ deployKey.fingerprint }}
</div>
</div>

View File

@ -10,6 +10,12 @@ module QA
end
end
product :fingerprint do
Page::Project::Settings::Repository.act do
expand_deploy_keys(&:key_fingerprint)
end
end
dependency Factory::Resource::Project, as: :project do |project|
project.name = 'project-to-deploy'
project.description = 'project for adding deploy key test'

View File

@ -41,7 +41,21 @@ module QA
end
def click_element(name)
find(Page::Element.new(name).selector_css).click
find_element(name).click
end
def find_element(name)
find(element_selector_css(name))
end
def within_element(name)
page.within(element_selector_css(name)) do
yield
end
end
def element_selector_css(name)
Page::Element.new(name).selector_css
end
def self.path

View File

@ -14,8 +14,8 @@ module QA
end
view 'app/assets/javascripts/deploy_keys/components/key.vue' do
element :key_title, /class=".*title.*"/
element :key_title_field, '{{ deployKey.title }}'
element :key_title, /class=".*qa-key-title.*"/
element :key_fingerprint, /class=".*qa-key-fingerprint.*"/
end
def fill_key_title(title)
@ -31,8 +31,22 @@ module QA
end
def key_title
page.within('.qa-project-deploy-keys') do
page.find('.title').text
within_project_deploy_keys do
find_element(:key_title).text
end
end
def key_fingerprint
within_project_deploy_keys do
find_element(:key_fingerprint).text
end
end
private
def within_project_deploy_keys
within_element(:project_deploy_keys) do
yield
end
end
end

View File

@ -1,7 +1,8 @@
module QA
feature 'deploy keys support', :core do
given(:key) { Runtime::RSAKey.new }
given(:deploy_key_title) { 'deploy key title' }
given(:deploy_key_value) { Runtime::RSAKey.new.public_key }
given(:deploy_key_value) { key.public_key }
scenario 'user adds a deploy key' do
Runtime::Browser.visit(:gitlab, Page::Main::Login)
@ -13,6 +14,7 @@ module QA
end
expect(deploy_key.title).to eq(deploy_key_title)
expect(deploy_key.fingerprint).to eq(key.fingerprint)
end
end
end