aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--features/category.feature23
-rw-r--r--features/support/step_definitions/category_steps.rb11
2 files changed, 34 insertions, 0 deletions
diff --git a/features/category.feature b/features/category.feature
new file mode 100644
index 0000000..14ec93e
--- /dev/null
+++ b/features/category.feature
@@ -0,0 +1,23 @@
+@blog @blog_categories
+Feature: Blog Post Categories
+ Blog posts can be assigned categories
+
+ Background:
+ Given I am a logged in refinery user
+ Given there is a category titled "Videos"
+
+ Scenario: The blog post new/edit form has category_list
+ When I am on the new blog post form
+ Then I should see "Tags"
+ Then I should see "Videos"
+
+ Scenario: The blog post new/edit form saves categories
+ When I am on the new blog post form
+ And I fill in "Title" with "This is my blog post"
+ And I fill in "blog_post_body" with "And I love it"
+ And I check "Videos"
+ And I press "Save"
+
+ Then there should be 1 blog post
+ And the blog post should have "1" category
+ And the blog post should have the category "Videos" \ No newline at end of file
diff --git a/features/support/step_definitions/category_steps.rb b/features/support/step_definitions/category_steps.rb
new file mode 100644
index 0000000..31176b4
--- /dev/null
+++ b/features/support/step_definitions/category_steps.rb
@@ -0,0 +1,11 @@
+Given /^there is a category titled "([^"]*)"$/ do |title|
+ @category = Factory(:blog_category, :title => title)
+end
+
+Then /^the blog post should have "([^"]*)" category$/ do |num_category|
+ BlogPost.last.categories.count.should == num_category
+end
+
+Then /^the blog post should have the category "([^"]*)"$/ do |category|
+ BlogPost.last.categories.first.title.should == category
+end \ No newline at end of file