diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-07-02 11:47:09 +0300 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-07-02 11:47:09 +0300 |
commit | ee890f2b2a66be925746f2238dc462a74b0fd219 (patch) | |
tree | bb2e74eb834d5c69f66e42c7a80af1705e616ea9 /spec/features | |
parent | f49fb5dca1ecf2b1ae6415920de09b4d95c14bb1 (diff) | |
parent | 7588186e8173f53a7f9b86d2b6959d7f94a3caac (diff) | |
download | gitlab-ce-ee890f2b2a66be925746f2238dc462a74b0fd219.tar.gz |
Merge branch 'master' into 6-0-dev
Conflicts:
app/views/dashboard/projects.html.haml
app/views/layouts/_head_panel.html.haml
config/routes.rb
Diffstat (limited to 'spec/features')
-rw-r--r-- | spec/features/notes_on_merge_requests_spec.rb | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/spec/features/notes_on_merge_requests_spec.rb b/spec/features/notes_on_merge_requests_spec.rb index 24f5437efff..d7bc66dd9c8 100644 --- a/spec/features/notes_on_merge_requests_spec.rb +++ b/spec/features/notes_on_merge_requests_spec.rb @@ -3,6 +3,7 @@ require 'spec_helper' describe "On a merge request", js: true do let!(:project) { create(:project_with_code) } let!(:merge_request) { create(:merge_request, project: project) } + let!(:note) { create(:note_on_merge_request_with_attachment, project: project) } before do login_as :user @@ -72,6 +73,71 @@ describe "On a merge request", js: true do should_not have_css(".note") end end + + describe "when editing a note", js: true do + it "should contain the hidden edit form" do + within("#note_#{note.id}") { should have_css(".note-edit-form", visible: false) } + end + + describe "editing the note" do + before do + find('.note').hover + find(".js-note-edit").click + end + + it "should show the note edit form and hide the note body" do + within("#note_#{note.id}") do + find(".note-edit-form", visible: true).should be_visible + find(".note-text", visible: false).should_not be_visible + end + end + + it "should reset the edit note form textarea with the original content of the note if cancelled" do + find('.note').hover + find(".js-note-edit").click + + within(".note-edit-form") do + fill_in "note[note]", with: "Some new content" + find(".btn-cancel").click + find(".js-note-text", visible: false).text.should == note.note + end + end + + it "appends the edited at time to the note" do + find('.note').hover + find(".js-note-edit").click + + within(".note-edit-form") do + fill_in "note[note]", with: "Some new content" + find(".btn-save").click + end + + within("#note_#{note.id}") do + should have_css(".note-last-update small") + find(".note-last-update small").text.should match(/Edited just now/) + end + end + end + + describe "deleting an attachment" do + before do + find('.note').hover + find(".js-note-edit").click + end + + it "shows the delete link" do + within(".note-attachment") do + should have_css(".js-note-attachment-delete") + end + end + + it "removes the attachment div and resets the edit form" do + find(".js-note-attachment-delete").click + should_not have_css(".note-attachment") + find(".note-edit-form", visible: false).should_not be_visible + end + end + end end describe "On a merge request diff", js: true, focus: true do |