Commit 5fc67fe4de1d2f03797176707b750595632de7f9

Authored by Leandro Santos
1 parent 1ad1af3d

should set the source in comment creation

lib/noosfero/api/v1/comments.rb
... ... @@ -30,8 +30,8 @@ module Noosfero
30 30 # POST api/v1/articles/12/comments?private_token=2298743290432&body=new comment&title=New
31 31 post ":id/comments" do
32 32 article = find_article(environment.articles, params[:id])
33   - options = params.select { |key,v| !['id','private_token'].include?(key) }.merge(:author => current_person)
34   - present article.comments.create(options), :with => Entities::Comment
  33 + options = params.select { |key,v| !['id','private_token'].include?(key) }.merge(:author => current_person, :source => article)
  34 + present Comment.create(options), :with => Entities::Comment
35 35 end
36 36 end
37 37  
... ...
test/unit/api/comments_test.rb
... ... @@ -65,4 +65,17 @@ class CommentsTest < ActiveSupport::TestCase
65 65 assert_equal 201, last_response.status
66 66 assert_equal body, json['comment']['body']
67 67 end
  68 +
  69 + should 'comment creation define the source' do
  70 + amount = Comment.count
  71 + article = fast_create(Article, :profile_id => user.person.id, :name => "Some thing")
  72 + body = 'My comment'
  73 + params.merge!({:body => body})
  74 +
  75 + post "/api/v1/articles/#{article.id}/comments?#{params.to_query}"
  76 + assert_equal amount + 1, Comment.count
  77 + comment = Comment.last
  78 + assert_not_nil comment.source
  79 + end
  80 +
68 81 end
... ...