diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2012-07-14 08:31:45 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2012-07-14 08:31:45 +0000 |
commit | 54d55a360a21569b4a76070b52177e778d5521c7 (patch) | |
tree | 9d430f4ccc6d4ad83a29a842cdfd33d9241b6279 /test/integration | |
parent | 18f693f9f7c1ff0a32ddda9b6ea43a4bb1fe28e1 (diff) | |
download | redmine-54d55a360a21569b4a76070b52177e778d5521c7.tar.gz redmine-54d55a360a21569b4a76070b52177e778d5521c7.zip |
Adds assertions on response status and body.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@9976 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test/integration')
-rw-r--r-- | test/integration/api_test/issues_test.rb | 57 |
1 files changed, 21 insertions, 36 deletions
diff --git a/test/integration/api_test/issues_test.rb b/test/integration/api_test/issues_test.rb index 9b25bc178..028b9e94f 100644 --- a/test/integration/api_test/issues_test.rb +++ b/test/integration/api_test/issues_test.rb @@ -625,53 +625,32 @@ class ApiTest::IssuesTest < ActionController::IntegrationTest {:issue => {:subject => 'API update', :notes => 'A new note'}}, {:success_code => :ok}) - should "not create a new issue" do + should "update the issue" do assert_no_difference('Issue.count') do - put '/issues/6.json', @parameters, credentials('jsmith') - end - end + assert_difference('Journal.count') do + put '/issues/6.json', @parameters, credentials('jsmith') - should "create a new journal" do - assert_difference('Journal.count') do - put '/issues/6.json', @parameters, credentials('jsmith') + assert_response :ok + assert_equal '', response.body + end end - end - - should "add the note to the journal" do - put '/issues/6.json', @parameters, credentials('jsmith') - - journal = Journal.last - assert_equal "A new note", journal.notes - end - - should "update the issue" do - put '/issues/6.json', @parameters, credentials('jsmith') issue = Issue.find(6) assert_equal "API update", issue.subject + journal = Journal.last + assert_equal "A new note", journal.notes end - end context "PUT /issues/6.json with failed update" do - setup do - @parameters = {:issue => {:subject => ''}} - end - - should "not create a new issue" do + should "return errors" do assert_no_difference('Issue.count') do - put '/issues/6.json', @parameters, credentials('jsmith') - end - end + assert_no_difference('Journal.count') do + put '/issues/6.json', {:issue => {:subject => ''}}, credentials('jsmith') - should "not create a new journal" do - assert_no_difference('Journal.count') do - put '/issues/6.json', @parameters, credentials('jsmith') + assert_response :unprocessable_entity + end end - end - - should "have an errors attribute" do - put '/issues/6.json', @parameters, credentials('jsmith') json = ActiveSupport::JSON.decode(response.body) assert json['errors'].include?("Subject can't be blank") @@ -685,8 +664,11 @@ class ApiTest::IssuesTest < ActionController::IntegrationTest {:success_code => :ok}) should "delete the issue" do - assert_difference('Issue.count',-1) do + assert_difference('Issue.count', -1) do delete '/issues/6.xml', {}, credentials('jsmith') + + assert_response :ok + assert_equal '', response.body end assert_nil Issue.find_by_id(6) @@ -700,8 +682,11 @@ class ApiTest::IssuesTest < ActionController::IntegrationTest {:success_code => :ok}) should "delete the issue" do - assert_difference('Issue.count',-1) do + assert_difference('Issue.count', -1) do delete '/issues/6.json', {}, credentials('jsmith') + + assert_response :ok + assert_equal '', response.body end assert_nil Issue.find_by_id(6) |