Commit 18815182839c42f7b966d83faaea433002fd93b0
Committed by
Paulo Meireles
1 parent
1b8945a7
Exists in
master
and in
28 other branches
[Mezuro] More acceptance tests for project feature.
Showing
2 changed files
with
62 additions
and
10 deletions
Show diff stats
features/step_definitions/mezuro_steps.rb
@@ -5,10 +5,6 @@ When /^I create a Mezuro (project|configuration) with the following data$/ do |t | @@ -5,10 +5,6 @@ When /^I create a Mezuro (project|configuration) with the following data$/ do |t | ||
5 | When %{I fill in "#{name}" with "#{value}"} | 5 | When %{I fill in "#{name}" with "#{value}"} |
6 | end | 6 | end |
7 | 7 | ||
8 | - if Article.find_by_name(fields.rows_hash[:Title]) | ||
9 | - return false | ||
10 | - end | ||
11 | - | ||
12 | click_button "Save" # Does not work without selenium? | 8 | click_button "Save" # Does not work without selenium? |
13 | Article.find_by_name(fields.rows_hash[:Title]) | 9 | Article.find_by_name(fields.rows_hash[:Title]) |
14 | end | 10 | end |
@@ -25,7 +21,8 @@ Then /^I should be at the url "([^\"]*)"$/ do |url| | @@ -25,7 +21,8 @@ Then /^I should be at the url "([^\"]*)"$/ do |url| | ||
25 | end | 21 | end |
26 | end | 22 | end |
27 | 23 | ||
28 | -Then /^I don't fill anything$/ do | 24 | +Then /^the field "([^"]*)" is empty$/ do |field_name| |
25 | + find_field(field_name).value.should be_nil | ||
29 | end | 26 | end |
30 | 27 | ||
31 | Then /^I should see "([^\"]*)" inside an alert$/ do |message| | 28 | Then /^I should see "([^\"]*)" inside an alert$/ do |message| |
@@ -34,11 +31,11 @@ Then /^I should see "([^\"]*)" inside an alert$/ do |message| | @@ -34,11 +31,11 @@ Then /^I should see "([^\"]*)" inside an alert$/ do |message| | ||
34 | end | 31 | end |
35 | 32 | ||
36 | Then /^I should see "([^"]*)" in the "([^"]*)" input$/ do |content, labeltext| | 33 | Then /^I should see "([^"]*)" in the "([^"]*)" input$/ do |content, labeltext| |
37 | - find_field("#{labeltext}").value.should == content | 34 | + find_field(labeltext).value.should == content |
38 | end | 35 | end |
39 | 36 | ||
40 | -Then /^I should see "([^"]*)" in the "([^"]*)" button$/ do |content, button_class| | ||
41 | - find_button("#{button_class}").value.should == content | 37 | +Then /^I should see "([^"]*)" button$/ do |button_name| |
38 | + find_button(button_name).should_not be_nil | ||
42 | end | 39 | end |
43 | 40 | ||
44 | When /^I have a Mezuro project with the following data$/ do |fields| | 41 | When /^I have a Mezuro project with the following data$/ do |fields| |
@@ -54,3 +51,11 @@ When /^I have a Mezuro project with the following data$/ do |fields| | @@ -54,3 +51,11 @@ When /^I have a Mezuro project with the following data$/ do |fields| | ||
54 | result.save! | 51 | result.save! |
55 | end | 52 | end |
56 | 53 | ||
54 | +When /^I update this Mezuro project with the following data$/ do |fields| | ||
55 | + find_field("article_name").set fields.rows_hash[:Title] | ||
56 | + find_field("article_description").set fields.rows_hash[:Description] | ||
57 | +end | ||
58 | + | ||
59 | +When /^I erase the "([^"]*)" field$/ do |field_name| | ||
60 | + find_field(field_name).set "" | ||
61 | +end |
plugins/mezuro/features/project.feature
@@ -28,8 +28,26 @@ Feature: Project | @@ -28,8 +28,26 @@ Feature: Project | ||
28 | And I should see "Sample Description" | 28 | And I should see "Sample Description" |
29 | And I should see "Add Repository" | 29 | And I should see "Add Repository" |
30 | 30 | ||
31 | - @selenium | ||
32 | - Scenario: I edit a Mezuro project | 31 | + Scenario: I try to create a Mezuro project without title |
32 | + Given I am on mycommunity's control panel | ||
33 | + And I follow "Mezuro project" | ||
34 | + And the field "article_name" is empty | ||
35 | + When I press "Save" | ||
36 | + Then I should see "Title can't be blank" | ||
37 | + | ||
38 | + Scenario: I try to create a Mezuro project with title already in use | ||
39 | + Given I have a Mezuro project with the following data | ||
40 | + | name | Sample Project | | ||
41 | + | description | Sample Description | | ||
42 | + | community | mycommunity | | ||
43 | + And I am on mycommunity's control panel | ||
44 | + When I create a Mezuro project with the following data | ||
45 | + | Title | Sample Project | | ||
46 | + | Description | Sample Description | | ||
47 | + Then I should see "Slug The title (article name) is already being used by another article, please use another title." | ||
48 | + | ||
49 | + @selenium | ||
50 | + Scenario: I see a Mezuro project edit form | ||
33 | Given I have a Mezuro project with the following data | 51 | Given I have a Mezuro project with the following data |
34 | | name | Sample Project | | 52 | | name | Sample Project | |
35 | | description | Sample Description | | 53 | | description | Sample Description | |
@@ -41,7 +59,36 @@ Feature: Project | @@ -41,7 +59,36 @@ Feature: Project | ||
41 | And I should see "Sample Description" in the "article_description" input | 59 | And I should see "Sample Description" in the "article_description" input |
42 | And I should see "Save" button | 60 | And I should see "Save" button |
43 | 61 | ||
62 | + @selenium | ||
63 | + Scenario: I edit a Mezuro project with valid attributes | ||
64 | + Given I have a Mezuro project with the following data | ||
65 | + | name | Sample Project | | ||
66 | + | description | Sample Description | | ||
67 | + | community | mycommunity | | ||
68 | + And I am on article "Sample Project" | ||
69 | + And I should be on /mycommunity/sample-project | ||
70 | + And I follow "Edit" | ||
71 | + When I update this Mezuro project with the following data | ||
72 | + | Title | Another Project | | ||
73 | + | Description | Another Description| | ||
74 | + And I press "Save" | ||
75 | + Then I should see "Another Project" | ||
76 | + And I should see "Another Description" | ||
77 | + And I should see "Add Repository" | ||
44 | 78 | ||
79 | + @selenium | ||
80 | + Scenario: I try to edit a Mezuro project leaving empty its title | ||
81 | + Given I have a Mezuro project with the following data | ||
82 | + | name | Sample Project | | ||
83 | + | description | Sample Description | | ||
84 | + | community | mycommunity | | ||
85 | + And I am on article "Sample Project" | ||
86 | + And I should be on /mycommunity/sample-project | ||
87 | + And I follow "Edit" | ||
88 | + When I erase the "article_name" field | ||
89 | + And I press "Save" | ||
90 | + Then I should see "Title can't be blank" | ||
91 | + | ||
45 | # @selenium | 92 | # @selenium |
46 | # Scenario: I delete a Mezuro project that belongs to me | 93 | # Scenario: I delete a Mezuro project that belongs to me |
47 | # Given the following Mezuro project | 94 | # Given the following Mezuro project |