diff options
author | Dan Davison <ddavison@gitlab.com> | 2018-06-18 12:38:00 -0400 |
---|---|---|
committer | ddavison <ddavison@gitlab.com> | 2018-06-26 12:41:56 -0400 |
commit | 3690a405391cbfe782e894055fee568714ff8939 (patch) | |
tree | 040f44a051a43728619d743c30ad264dc249b023 | |
parent | 7f5a52d7952e71aa94e8cabee323a81642bf39e8 (diff) | |
download | gitlab-ce-milestone-tests.tar.gz |
adding milestone functionality for merge requestsmilestone-tests
-rw-r--r-- | app/views/groups/milestones/_form.html.haml | 4 | ||||
-rw-r--r-- | app/views/groups/milestones/index.html.haml | 2 | ||||
-rw-r--r-- | app/views/projects/milestones/_form.html.haml | 2 | ||||
-rw-r--r-- | app/views/shared/_new_project_item_select.html.haml | 2 | ||||
-rw-r--r-- | app/views/shared/issuable/_milestone_dropdown.html.haml | 2 | ||||
-rw-r--r-- | qa/qa/factory/resource/merge_request.rb | 2 | ||||
-rw-r--r-- | qa/qa/page/dashboard/milestones.rb | 6 | ||||
-rw-r--r-- | qa/qa/page/merge_request/new.rb | 13 | ||||
-rw-r--r-- | qa/qa/page/project/milestone/new.rb | 4 | ||||
-rw-r--r-- | qa/qa/page/project/milestone/show.rb | 3 | ||||
-rw-r--r-- | qa/qa/specs/features/merge_request/create_spec.rb | 19 | ||||
-rw-r--r-- | qa/qa/specs/features/milestone/create_spec.rb | 7 |
12 files changed, 15 insertions, 51 deletions
diff --git a/app/views/groups/milestones/_form.html.haml b/app/views/groups/milestones/_form.html.haml index fe532274887..6d35457a0ec 100644 --- a/app/views/groups/milestones/_form.html.haml +++ b/app/views/groups/milestones/_form.html.haml @@ -6,12 +6,12 @@ .form-group.row = f.label :title, "Title", class: "col-form-label col-sm-2" .col-sm-10 - = f.text_field :title, maxlength: 255, class: "qa-milestone-title form-control", required: true, autofocus: true + = f.text_field :title, maxlength: 255, class: "form-control", required: true, autofocus: true .form-group.row.milestone-description = f.label :description, "Description", class: "col-form-label col-sm-2" .col-sm-10 = render layout: 'projects/md_preview', locals: { url: group_preview_markdown_path } do - = render 'projects/zen', f: f, attr: :description, classes: 'qa-milestone-description note-textarea', placeholder: 'Write milestone description...', supports_autocomplete: false + = render 'projects/zen', f: f, attr: :description, classes: 'note-textarea', placeholder: 'Write milestone description...', supports_autocomplete: false .clearfix .error-alert diff --git a/app/views/groups/milestones/index.html.haml b/app/views/groups/milestones/index.html.haml index 0a81978bd11..f5f621507b8 100644 --- a/app/views/groups/milestones/index.html.haml +++ b/app/views/groups/milestones/index.html.haml @@ -6,7 +6,7 @@ .nav-controls = render 'shared/milestones_sort_dropdown' - if can?(current_user, :admin_milestones, @group) - = link_to "New milestone", new_group_milestone_path(@group), class: "btn btn-new qa-new-milestone" + = link_to "New milestone", new_group_milestone_path(@group), class: "btn btn-new" .milestones %ul.content-list diff --git a/app/views/projects/milestones/_form.html.haml b/app/views/projects/milestones/_form.html.haml index 7c936940d48..ba77ab5287f 100644 --- a/app/views/projects/milestones/_form.html.haml +++ b/app/views/projects/milestones/_form.html.haml @@ -18,7 +18,7 @@ .form-actions - if @milestone.new_record? - = f.submit 'Create milestone', class: "btn-create btn" + = f.submit 'Create milestone', class: "btn-create btn qa-milestone-create-button" = link_to "Cancel", project_milestones_path(@project), class: "btn btn-cancel" - else = f.submit 'Save changes', class: "btn-save btn" diff --git a/app/views/shared/_new_project_item_select.html.haml b/app/views/shared/_new_project_item_select.html.haml index ac2ebb701a5..276541cb981 100644 --- a/app/views/shared/_new_project_item_select.html.haml +++ b/app/views/shared/_new_project_item_select.html.haml @@ -1,6 +1,6 @@ - if any_projects?(@projects) .project-item-select-holder.btn-group - %a.btn.btn-new.new-project-item-link{ href: '', data: { label: local_assigns[:label], type: local_assigns[:type] } } + %a.btn.btn-new.new-project-item-link.qa-new-project-item-link{ href: '', data: { label: local_assigns[:label], type: local_assigns[:type] } } = icon('spinner spin') = project_select_tag :project_path, class: "project-item-select", data: { include_groups: local_assigns[:include_groups], order_by: 'last_activity_at', relative_path: local_assigns[:path] }, with_feature_enabled: local_assigns[:with_feature_enabled] %button.btn.btn-new.new-project-item-select-button diff --git a/app/views/shared/issuable/_milestone_dropdown.html.haml b/app/views/shared/issuable/_milestone_dropdown.html.haml index c804b508a01..c2da363b8c6 100644 --- a/app/views/shared/issuable/_milestone_dropdown.html.haml +++ b/app/views/shared/issuable/_milestone_dropdown.html.haml @@ -13,7 +13,7 @@ %ul.dropdown-footer-list - if can? current_user, :admin_milestone, project %li - = link_to new_project_milestone_path(project), class: 'qa-issuable-new-milestone', title: "New Milestone" do + = link_to new_project_milestone_path(project), title: "New Milestone" do Create new %li = link_to project_milestones_path(project) do diff --git a/qa/qa/factory/resource/merge_request.rb b/qa/qa/factory/resource/merge_request.rb index 84c487ba7cf..d3dad7a8a14 100644 --- a/qa/qa/factory/resource/merge_request.rb +++ b/qa/qa/factory/resource/merge_request.rb @@ -58,9 +58,7 @@ module QA page.fill_title(@title) page.fill_description(@description) - page.choose_assignee(@assignee) page.choose_milestone(@milestone) - page.choose_labels(@labels) page.create_merge_request end diff --git a/qa/qa/page/dashboard/milestones.rb b/qa/qa/page/dashboard/milestones.rb index 78c9412f2f4..f9069e61e29 100644 --- a/qa/qa/page/dashboard/milestones.rb +++ b/qa/qa/page/dashboard/milestones.rb @@ -2,13 +2,15 @@ module QA module Page module Dashboard class Milestones < Page::Base - view 'app/views/dashboard/milestone/index.html.haml' + view 'app/views/shared/_new_project_item_select.html.haml' do + element :new_project_item_link + end def select_project_or_group(project_or_group) find('.new-project-item-select-button').click find('ul.select2-results > li', text: project_or_group).click - find('.new-project-item-link').click + click_element :new_project_item_link end def self.path diff --git a/qa/qa/page/merge_request/new.rb b/qa/qa/page/merge_request/new.rb index b38ccdf392e..ece820bed6a 100644 --- a/qa/qa/page/merge_request/new.rb +++ b/qa/qa/page/merge_request/new.rb @@ -20,7 +20,6 @@ module QA view 'app/views/shared/issuable/_milestone_dropdown.html.haml' do element :issuable_dropdown_menu_milestone - element :issuable_new_milestone end def create_merge_request @@ -35,12 +34,6 @@ module QA fill_element :issuable_form_description, description end - def choose_assignee(assignee) - unless assignee.nil? - # TODO Choose the Assignee - end - end - def choose_milestone(milestone) unless milestone.nil? click_element :issuable_milestone_dropdown @@ -49,12 +42,6 @@ module QA end end end - - def choose_labels(labels) - unless labels.nil? and labels.is_a? Array - # TODO: Choose Label(s) - end - end end end end diff --git a/qa/qa/page/project/milestone/new.rb b/qa/qa/page/project/milestone/new.rb index edeb6b45546..992ef89004b 100644 --- a/qa/qa/page/project/milestone/new.rb +++ b/qa/qa/page/project/milestone/new.rb @@ -4,6 +4,7 @@ module QA module Milestone class New < Page::Base view 'app/views/projects/milestones/_form.html.haml' do + element :milestone_create_button element :milestone_title element :milestone_description end @@ -17,11 +18,10 @@ module QA end def create_new_milestone - click_button 'Create milestone' + click_element :milestone_create_button end end end end end end - diff --git a/qa/qa/page/project/milestone/show.rb b/qa/qa/page/project/milestone/show.rb index 02b495e20d5..cc24f4cdcff 100644 --- a/qa/qa/page/project/milestone/show.rb +++ b/qa/qa/page/project/milestone/show.rb @@ -3,6 +3,8 @@ module QA module Project module Milestone class Show < Page::Base + view 'app/views/projects/milestones/show.html.haml' + def milestone_title find('h2.title').text end @@ -11,4 +13,3 @@ module QA end end end - diff --git a/qa/qa/specs/features/merge_request/create_spec.rb b/qa/qa/specs/features/merge_request/create_spec.rb index 80d800d9eeb..bdac77bdd92 100644 --- a/qa/qa/specs/features/merge_request/create_spec.rb +++ b/qa/qa/specs/features/merge_request/create_spec.rb @@ -4,20 +4,6 @@ module QA Runtime::Browser.visit(:gitlab, Page::Main::Login) Page::Main::Login.act { sign_in_using_credentials } - Factory::Resource::MergeRequest.fabricate! do |merge_request| - merge_request.title = 'This is a merge request' - merge_request.description = 'Great feature' - end - - expect(page).to have_content('This is a merge request') - expect(page).to have_content('Great feature') - expect(page).to have_content(/Opened [\w\s]+ ago/) - end - - scenario 'user attaches a milestone to the merge request' do - Runtime::Browser.visit(:gitlab, Page::Main::Login) - Page::Main::Login.act { sign_in_using_credentials } - current_project = Factory::Resource::Project.fabricate! do |project| project.name = 'project-with-merge-request-and-milestone' end @@ -27,20 +13,17 @@ module QA milestone.project = current_project end - Factory::Resource::MergeRequest.fabricate! do |merge_request| merge_request.title = 'This is a merge request with a milestone' merge_request.description = 'Great feature with milestone' merge_request.project = current_project - # merge_request.assignee = merge_request.milestone = current_milestone - # merge_request.labels = %w() end expect(page).to have_content('This is a merge request with a milestone') expect(page).to have_content('Great feature with milestone') - expect(page).to have_content('Opened less than a minute ago') + expect(page).to have_content(/Opened [\w\s]+ ago/) expect(page).to have_content(current_milestone.title) end end diff --git a/qa/qa/specs/features/milestone/create_spec.rb b/qa/qa/specs/features/milestone/create_spec.rb deleted file mode 100644 index 2b7522af0cf..00000000000 --- a/qa/qa/specs/features/milestone/create_spec.rb +++ /dev/null @@ -1,7 +0,0 @@ -module QA - feature 'milestone', :core do - scenario 'user creates a milestone' do - # TODO stub - end - end -end |