diff options
author | Riyad Preukschas <riyad@informatik.uni-bremen.de> | 2013-01-15 00:11:35 +0100 |
---|---|---|
committer | Riyad Preukschas <riyad@informatik.uni-bremen.de> | 2013-01-15 00:52:57 +0100 |
commit | d28176b132bdc74055f31e2d62665d5d74ebacb4 (patch) | |
tree | 4bc9c8e3778d51020da0e8bb318aa7c3830ee67d /features/steps/shared/diff_note.rb | |
parent | f8e1f4a7c9ee2554efcf7376a0cfbefae8956d7b (diff) | |
download | gitlab-ce-d28176b132bdc74055f31e2d62665d5d74ebacb4.tar.gz |
Replace commit diff note request specs with spinach features
Diffstat (limited to 'features/steps/shared/diff_note.rb')
-rw-r--r-- | features/steps/shared/diff_note.rb | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/features/steps/shared/diff_note.rb b/features/steps/shared/diff_note.rb new file mode 100644 index 00000000000..36597e879bb --- /dev/null +++ b/features/steps/shared/diff_note.rb @@ -0,0 +1,158 @@ +module SharedDiffNote + include Spinach::DSL + + Given 'I cancel the diff comment' do + within(".diff_file") do + find(".js-close-discussion-note-form").trigger("click") + end + end + + Given 'I delete a diff comment' do + within(".diff_file") do + first(".js-note-delete").trigger("click") + end + end + + Given 'I haven\'t written any diff comment text' do + within(".diff_file") do + fill_in "note[note]", with: "" + end + end + + Given 'I leave a diff comment like "Typo, please fix"' do + find("#0_29_14.line_holder .js-add-diff-note-button").trigger("click") + within(".diff_file") do + fill_in "note[note]", with: "Typo, please fix" + #click_button("Add Comment") + find(".js-comment-button").trigger("click") + end + end + + Given 'I preview a diff comment text like "Should fix it :smile:"' do + find("#0_29_14.line_holder .js-add-diff-note-button").trigger("click") + within(".diff_file") do + fill_in "note[note]", with: "Should fix it :smile:" + find(".js-note-preview-button").trigger("click") + end + end + + Given 'I preview another diff comment text like "DRY this up"' do + find("#0_57_41.line_holder .js-add-diff-note-button").trigger("click") + within(".diff_file") do + fill_in "note[note]", with: "DRY this up" + find(".js-note-preview-button").trigger("click") + end + end + + Given 'I open a diff comment form' do + find("#0_29_14.line_holder .js-add-diff-note-button").trigger("click") + end + + Given 'I open another diff comment form' do + find("#0_57_41.line_holder .js-add-diff-note-button").trigger("click") + end + + Given 'I write a diff comment like ":-1: I don\'t like this"' do + within(".diff_file") do + fill_in "note[note]", with: ":-1: I don\'t like this" + end + end + + Given 'I submit the diff comment' do + within(".diff_file") do + click_button("Add Comment") + end + end + + + + Then 'I should not see the diff comment form' do + within(".diff_file") do + page.should_not have_css("form.new_note") + end + end + + Then 'I should not see the diff comment preview button' do + within(".diff_file") do + page.should have_css(".js-note-preview-button", visible: false) + end + end + + Then 'I should not see the diff comment text field' do + within(".diff_file") do + page.should have_css(".js-note-text", visible: false) + end + end + + Then 'I should only see one diff form' do + within(".diff_file") do + page.should have_css("form.new_note", count: 1) + end + end + + Then 'I should see a diff comment form with ":-1: I don\'t like this"' do + within(".diff_file") do + page.should have_field("note[note]", with: ":-1: I don\'t like this") + end + end + + Then 'I should see a diff comment saying "Typo, please fix"' do + within(".diff_file .note") do + page.should have_content("Typo, please fix") + end + end + + Then 'I should see a discussion reply button' do + within(".diff_file") do + page.should have_link("Reply") + end + end + + Then 'I should see a temporary diff comment form' do + within(".diff_file") do + page.should have_css(".js-temp-notes-holder form.new_note") + end + end + + Then 'I should see add a diff comment button' do + page.should have_css(".js-add-diff-note-button", visible: false) + end + + Then 'I should see an empty diff comment form' do + within(".diff_file") do + page.should have_field("note[note]", with: "") + end + end + + Then 'I should see the cancel comment button' do + within(".diff_file form") do + page.should have_css(".js-close-discussion-note-form", text: "Cancel") + end + end + + Then 'I should see the diff comment preview' do + within(".diff_file form") do + page.should have_css(".js-note-preview", visible: false) + end + end + + Then 'I should see the diff comment edit button' do + within(".diff_file") do + page.should have_css(".js-note-edit-button", visible: true) + end + end + + Then 'I should see the diff comment preview button' do + within(".diff_file") do + page.should have_css(".js-note-preview-button", visible: true) + end + end + + Then 'I should see two separate previews' do + within(".diff_file") do + page.should have_css(".js-note-preview", visible: true, count: 2) + page.should have_content("Should fix it") + page.should have_content("DRY this up") + end + end +end |