Commit 54d7aaef482657c61d183fe6c60b9361512ac81a
1 parent
97e25590
Exists in
master
Fixing person unit tests
- Improves code style Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com>
Showing
2 changed files
with
35 additions
and
11 deletions
Show diff stats
lib/person_data_export.rb
... | ... | @@ -30,8 +30,9 @@ module PersonDataExport |
30 | 30 | end |
31 | 31 | |
32 | 32 | def person_commuinities_attrs(attrs, person) |
33 | + communities_count = person.communities.count - person.softwares.count | |
33 | 34 | attrs['communities-count'] = person.respond_to?("softwares") ? |
34 | - person.communities.count - person.softwares.count : | |
35 | + communities_count : | |
35 | 36 | person.communities.count |
36 | 37 | attrs['communities'] = [] |
37 | 38 | person.communities.each do |community| |
... | ... | @@ -43,7 +44,8 @@ module PersonDataExport |
43 | 44 | end |
44 | 45 | |
45 | 46 | def person_softwares_attrs(attrs, person) |
46 | - attrs['softwares-count'] = person.respond_to?("softwares") ? person.softwares.count : 0 | |
47 | + attrs['softwares-count'] = person.respond_to?("softwares") ? | |
48 | + person.softwares.count : 0 | |
47 | 49 | attrs['softwares'] = [] |
48 | 50 | if person.respond_to?("softwares") |
49 | 51 | person.softwares.each do |software| | ... | ... |
test/unit/person_test.rb
1 | 1 | require File.dirname(__FILE__) + '/../../../../test/test_helper' |
2 | 2 | |
3 | 3 | class PersonTest < ActiveSupport::TestCase |
4 | + include PersonDataExport | |
5 | + | |
4 | 6 | def setup |
5 | 7 | @john = fast_create(Person, :name => "John Snow") |
6 | 8 | @arya = fast_create(Person, :name => "Arya Stark") |
... | ... | @@ -23,9 +25,9 @@ class PersonTest < ActiveSupport::TestCase |
23 | 25 | end |
24 | 26 | |
25 | 27 | should 'get the attributes of Joffrey Lannister' do |
26 | - attributes = @joffrey.attr_to_hash | |
28 | + attributes = person_attr_to_hash @joffrey | |
27 | 29 | |
28 | - assert_equal attributes["type"], "Person" | |
30 | + assert_equal attributes["data"]["type"], "Person" | |
29 | 31 | assert_equal attributes["data"]["name"], "Joffrey Lannister" |
30 | 32 | |
31 | 33 | assert_equal attributes["articles-count"], 0 |
... | ... | @@ -36,8 +38,8 @@ class PersonTest < ActiveSupport::TestCase |
36 | 38 | end |
37 | 39 | |
38 | 40 | should 'get friendship information' do |
39 | - attributes_joffrey = @joffrey.attr_to_hash | |
40 | - attributes_arya = @arya.attr_to_hash | |
41 | + attributes_joffrey = person_attr_to_hash @joffrey | |
42 | + attributes_arya = person_attr_to_hash @arya | |
41 | 43 | |
42 | 44 | assert_equal attributes_joffrey["friends-count"], 0 |
43 | 45 | assert_equal attributes_arya["friends-count"], 1 |
... | ... | @@ -50,11 +52,31 @@ class PersonTest < ActiveSupport::TestCase |
50 | 52 | @environment.add_admin(@arya) |
51 | 53 | @environment.save |
52 | 54 | |
53 | - @thrones_the_game = SoftwareInfo.new | |
54 | - @thrones_the_game.community_id = @game_of_thrones.id | |
55 | - @thrones_the_game.save | |
56 | - | |
57 | - attributes = @john.attr_to_hash | |
55 | + thrones_the_game = SoftwareInfo.new | |
56 | + thrones_the_game.community_id = @game_of_thrones.id | |
57 | + thrones_the_game.public_software = true | |
58 | + | |
59 | + license_gpl = LicenseInfo.create( | |
60 | + :version=>"CC-GPL-V2", | |
61 | + :link=>"http://creativecommons.org/licenses/GPL/2.0/legalcode.pt" | |
62 | + ) | |
63 | + thrones_the_game.license_info = license_gpl | |
64 | + | |
65 | + software = Category.create(:name => _("Software"), | |
66 | + :environment => @environment) | |
67 | + categories = [] | |
68 | + categories << Category.create(:name => "TBS", | |
69 | + :environment => @environment, | |
70 | + :parent => software) | |
71 | + categories << Category.create(:name => "War", | |
72 | + :environment => @environment, | |
73 | + :parent => software) | |
74 | + thrones_the_game.community.categories << categories | |
75 | + | |
76 | + thrones_the_game.finality = "teste" | |
77 | + thrones_the_game.save | |
78 | + | |
79 | + attributes = person_attr_to_hash @arya | |
58 | 80 | |
59 | 81 | assert_equal attributes["softwares-count"], 1 |
60 | 82 | assert_equal attributes["softwares"][0]["name"], "Game of Thrones" | ... | ... |