test/peaty_test.rb in peaty-0.4.5 vs test/peaty_test.rb in peaty-0.4.6
- old
+ new
@@ -77,18 +77,33 @@
assert !@user.pivotal_tracker_projects.find(PROJECT_ID).stories(:type => :chore).all.empty?
assert_equal :chore, @user.pivotal_tracker_projects.find(PROJECT_ID).chores.first.story_type
end
def test_user_can_create_a_new_story_for_a_project
+ FakeWeb.register_uri(:post, Regexp.new(PT_BASE_URI + "/projects/#{PROJECT_ID}/stories"),
+ :body => File.read(File.join(File.dirname(__FILE__), "fixtures", "create_story.xml")))
+ # http://www.pivotaltracker.com/services/v3/projects/153937/stories?story%5Bname%5D=Test&story%5Bproject_id%5D=153937&story%5Bestimate%5D=3
+
story = @user.pivotal_tracker_projects.find(PROJECT_ID).stories.build(:name => name = "Test")
assert story.is_a?(Peaty::Story)
assert story.new_record?
assert_equal PROJECT_ID, story.project_id
assert_equal name, story.name
story.estimate = 3
assert story.save
assert !story.new_record?
+ end
+
+ def test_user_can_get_error_messages_when_trying_to_create_a_new_story_for_a_project_that_fails
+ FakeWeb.register_uri(:post, Regexp.new(PT_BASE_URI + "/projects/#{PROJECT_ID}/stories"),
+ :body => File.read(File.join(File.dirname(__FILE__), "fixtures", "create_story_error.xml")),
+ :status => 422)
+
+ story = @user.pivotal_tracker_projects.find(PROJECT_ID).stories.build(:title => "Title Doesn't Exist")
+ assert !story.save
+ assert story.new_record?
+ assert_equal "unknown attribute: title", story.error
end
# Tests for Iterations
def test_user_can_fetch_a_projects_iterations
project = @user.pivotal_tracker_projects.find(PROJECT_ID)