Commit e7e132e71f3e4271d28e94784e743a644e955eb8
1 parent
5c42f6c1
Exists in
master
and in
29 other branches
Fix: profile_controller tests
Showing
2 changed files
with
46 additions
and
20 deletions
Show diff stats
app/helpers/profile_helper.rb
| @@ -78,7 +78,9 @@ module ProfileHelper | @@ -78,7 +78,9 @@ module ProfileHelper | ||
| 78 | entries = multiple ? value : [] << value | 78 | entries = multiple ? value : [] << value |
| 79 | entries.map do |entry| | 79 | entries.map do |entry| |
| 80 | content = self.send("treat_#{field}", entry) | 80 | content = self.send("treat_#{field}", entry) |
| 81 | - content_tag('tr', content_tag('td', title(field, entry), :class => 'field-name') + content_tag('td', content)) | 81 | + unless content.blank? |
| 82 | + content_tag('tr', content_tag('td', title(field, entry), :class => 'field-name') + content_tag('td', content)) | ||
| 83 | + end | ||
| 82 | end.join("\n") | 84 | end.join("\n") |
| 83 | else | 85 | else |
| 84 | '' | 86 | '' |
test/functional/profile_controller_test.rb
| @@ -109,8 +109,9 @@ class ProfileControllerTest < ActionController::TestCase | @@ -109,8 +109,9 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 109 | 109 | ||
| 110 | should 'show friends link to person' do | 110 | should 'show friends link to person' do |
| 111 | person = create_user('person_1').person | 111 | person = create_user('person_1').person |
| 112 | + person.add_friend(profile) | ||
| 112 | get :index, :profile => person.identifier | 113 | get :index, :profile => person.identifier |
| 113 | - assert_tag :tag => 'a', :content => /#{profile.friends.count}/, :attributes => { :href => /profile\/#{person.identifier}\/friends$/ } | 114 | + assert_tag :tag => 'a', :content => /#{person.friends.count}/, :attributes => { :href => /profile\/#{person.identifier}\/friends$/ } |
| 114 | end | 115 | end |
| 115 | 116 | ||
| 116 | should 'display tag for profile' do | 117 | should 'display tag for profile' do |
| @@ -232,6 +233,7 @@ class ProfileControllerTest < ActionController::TestCase | @@ -232,6 +233,7 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 232 | 233 | ||
| 233 | should 'display "Products" link for enterprise' do | 234 | should 'display "Products" link for enterprise' do |
| 234 | ent = fast_create(Enterprise, :name => 'my test enterprise', :identifier => 'my-test-enterprise', :enabled => false) | 235 | ent = fast_create(Enterprise, :name => 'my test enterprise', :identifier => 'my-test-enterprise', :enabled => false) |
| 236 | + product = fast_create(Product, :profile_id => ent.id) | ||
| 235 | 237 | ||
| 236 | get :index, :profile => 'my-test-enterprise' | 238 | get :index, :profile => 'my-test-enterprise' |
| 237 | assert_tag :tag => 'a', :attributes => { :href => '/catalog/my-test-enterprise'}, :content => /Products\/Services/ | 239 | assert_tag :tag => 'a', :attributes => { :href => '/catalog/my-test-enterprise'}, :content => /Products\/Services/ |
| @@ -1081,8 +1083,16 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1081,8 +1083,16 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1081 | atn = fast_create(ActionTrackerNotification, :profile_id => profile.id, :action_tracker_id => at.id) | 1083 | atn = fast_create(ActionTrackerNotification, :profile_id => profile.id, :action_tracker_id => at.id) |
| 1082 | get :index, :profile => person.identifier | 1084 | get :index, :profile => person.identifier |
| 1083 | assert_no_tag :tag => 'div', :attributes => {:id => 'profile-network'} | 1085 | assert_no_tag :tag => 'div', :attributes => {:id => 'profile-network'} |
| 1086 | + end | ||
| 1087 | + | ||
| 1088 | + should "show the network activity if the viewer follows the profile" do | ||
| 1089 | + login_as(profile.identifier) | ||
| 1090 | + person = fast_create(Person) | ||
| 1091 | + at = fast_create(ActionTracker::Record, :user_id => person.id) | ||
| 1092 | + atn = fast_create(ActionTrackerNotification, :profile_id => profile.id, :action_tracker_id => at.id) | ||
| 1084 | 1093 | ||
| 1085 | person.add_friend(profile) | 1094 | person.add_friend(profile) |
| 1095 | + profile.add_friend(person) | ||
| 1086 | get :index, :profile => person.identifier | 1096 | get :index, :profile => person.identifier |
| 1087 | assert_tag :tag => 'div', :attributes => {:id => 'profile-network'} | 1097 | assert_tag :tag => 'div', :attributes => {:id => 'profile-network'} |
| 1088 | end | 1098 | end |
| @@ -1101,8 +1111,16 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1101,8 +1111,16 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1101 | scrap = fast_create(Scrap, :sender_id => person.id, :receiver_id => profile.id) | 1111 | scrap = fast_create(Scrap, :sender_id => person.id, :receiver_id => profile.id) |
| 1102 | get :index, :profile => person.identifier | 1112 | get :index, :profile => person.identifier |
| 1103 | assert_no_tag :tag => 'div', :attributes => {:id => 'leave_scrap'}, :descendant => { :tag => 'input', :attributes => {:value => 'Share'} } | 1113 | assert_no_tag :tag => 'div', :attributes => {:id => 'leave_scrap'}, :descendant => { :tag => 'input', :attributes => {:value => 'Share'} } |
| 1114 | + end | ||
| 1115 | + | ||
| 1116 | + should "show the scrap area on wall if the user follows the user" do | ||
| 1117 | + login_as(profile.identifier) | ||
| 1118 | + person = fast_create(Person) | ||
| 1119 | + scrap = fast_create(Scrap, :sender_id => person.id, :receiver_id => profile.id) | ||
| 1104 | 1120 | ||
| 1105 | person.add_friend(profile) | 1121 | person.add_friend(profile) |
| 1122 | + profile.add_friend(person) | ||
| 1123 | + | ||
| 1106 | get :index, :profile => person.identifier | 1124 | get :index, :profile => person.identifier |
| 1107 | assert_tag :tag => 'div', :attributes => {:id => 'leave_scrap'}, :descendant => { :tag => 'input', :attributes => {:value => 'Share'} } | 1125 | assert_tag :tag => 'div', :attributes => {:id => 'leave_scrap'}, :descendant => { :tag => 'input', :attributes => {:value => 'Share'} } |
| 1108 | end | 1126 | end |
| @@ -1470,9 +1488,9 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1470,9 +1488,9 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1470 | viewed.data = { :sex => 'male', :fields_privacy => { 'sex' => 'public', 'birth_date' => 'public' } } | 1488 | viewed.data = { :sex => 'male', :fields_privacy => { 'sex' => 'public', 'birth_date' => 'public' } } |
| 1471 | viewed.save! | 1489 | viewed.save! |
| 1472 | get :index, :profile => viewed.identifier | 1490 | get :index, :profile => viewed.identifier |
| 1473 | - assert_tag :tag => 'td', :content => 'Sex:' | 1491 | + assert_tag :tag => 'td', :content => 'Sex' |
| 1474 | assert_tag :tag => 'td', :content => 'Male' | 1492 | assert_tag :tag => 'td', :content => 'Male' |
| 1475 | - assert_tag :tag => 'td', :content => 'Date of birth:' | 1493 | + assert_tag :tag => 'td', :content => 'Date of birth' |
| 1476 | assert_tag :tag => 'td', :content => 'August 26, 1990' | 1494 | assert_tag :tag => 'td', :content => 'August 26, 1990' |
| 1477 | end | 1495 | end |
| 1478 | 1496 | ||
| @@ -1484,9 +1502,9 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1484,9 +1502,9 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1484 | viewed.data = { :sex => 'male', :fields_privacy => { 'sex' => 'public' } } | 1502 | viewed.data = { :sex => 'male', :fields_privacy => { 'sex' => 'public' } } |
| 1485 | viewed.save! | 1503 | viewed.save! |
| 1486 | get :index, :profile => viewed.identifier | 1504 | get :index, :profile => viewed.identifier |
| 1487 | - assert_tag :tag => 'td', :content => 'Sex:' | 1505 | + assert_tag :tag => 'td', :content => 'Sex' |
| 1488 | assert_tag :tag => 'td', :content => 'Male' | 1506 | assert_tag :tag => 'td', :content => 'Male' |
| 1489 | - assert_no_tag :tag => 'td', :content => 'Date of birth:' | 1507 | + assert_no_tag :tag => 'td', :content => 'Date of birth' |
| 1490 | assert_no_tag :tag => 'td', :content => 'August 26, 1990' | 1508 | assert_no_tag :tag => 'td', :content => 'August 26, 1990' |
| 1491 | end | 1509 | end |
| 1492 | 1510 | ||
| @@ -1500,9 +1518,9 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1500,9 +1518,9 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1500 | strange = create_user('person_2').person | 1518 | strange = create_user('person_2').person |
| 1501 | login_as(strange.identifier) | 1519 | login_as(strange.identifier) |
| 1502 | get :index, :profile => viewed.identifier | 1520 | get :index, :profile => viewed.identifier |
| 1503 | - assert_tag :tag => 'td', :content => 'Sex:' | 1521 | + assert_tag :tag => 'td', :content => 'Sex' |
| 1504 | assert_tag :tag => 'td', :content => 'Male' | 1522 | assert_tag :tag => 'td', :content => 'Male' |
| 1505 | - assert_no_tag :tag => 'td', :content => 'Date of birth:' | 1523 | + assert_no_tag :tag => 'td', :content => 'Date of birth' |
| 1506 | assert_no_tag :tag => 'td', :content => 'August 26, 1990' | 1524 | assert_no_tag :tag => 'td', :content => 'August 26, 1990' |
| 1507 | end | 1525 | end |
| 1508 | 1526 | ||
| @@ -1517,9 +1535,9 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1517,9 +1535,9 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1517 | Person.any_instance.stubs(:is_a_friend?).returns(true) | 1535 | Person.any_instance.stubs(:is_a_friend?).returns(true) |
| 1518 | login_as(friend.identifier) | 1536 | login_as(friend.identifier) |
| 1519 | get :index, :profile => viewed.identifier | 1537 | get :index, :profile => viewed.identifier |
| 1520 | - assert_tag :tag => 'td', :content => 'Sex:' | 1538 | + assert_tag :tag => 'td', :content => 'Sex' |
| 1521 | assert_tag :tag => 'td', :content => 'Male' | 1539 | assert_tag :tag => 'td', :content => 'Male' |
| 1522 | - assert_tag :tag => 'td', :content => 'Date of birth:' | 1540 | + assert_tag :tag => 'td', :content => 'Date of birth' |
| 1523 | assert_tag :tag => 'td', :content => 'August 26, 1990' | 1541 | assert_tag :tag => 'td', :content => 'August 26, 1990' |
| 1524 | end | 1542 | end |
| 1525 | 1543 | ||
| @@ -1532,9 +1550,9 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1532,9 +1550,9 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1532 | viewed.save! | 1550 | viewed.save! |
| 1533 | login_as(viewed.identifier) | 1551 | login_as(viewed.identifier) |
| 1534 | get :index, :profile => viewed.identifier | 1552 | get :index, :profile => viewed.identifier |
| 1535 | - assert_tag :tag => 'td', :content => 'Sex:' | 1553 | + assert_tag :tag => 'td', :content => 'Sex' |
| 1536 | assert_tag :tag => 'td', :content => 'Male' | 1554 | assert_tag :tag => 'td', :content => 'Male' |
| 1537 | - assert_tag :tag => 'td', :content => 'Date of birth:' | 1555 | + assert_tag :tag => 'td', :content => 'Date of birth' |
| 1538 | assert_tag :tag => 'td', :content => 'August 26, 1990' | 1556 | assert_tag :tag => 'td', :content => 'August 26, 1990' |
| 1539 | end | 1557 | end |
| 1540 | 1558 | ||
| @@ -1547,7 +1565,7 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1547,7 +1565,7 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1547 | login_as(strange.identifier) | 1565 | login_as(strange.identifier) |
| 1548 | get :index, :profile => viewed.identifier | 1566 | get :index, :profile => viewed.identifier |
| 1549 | assert_tag :tag => 'th', :content => 'Contact' | 1567 | assert_tag :tag => 'th', :content => 'Contact' |
| 1550 | - assert_tag :tag => 'td', :content => 'e-Mail:' | 1568 | + assert_tag :tag => 'td', :content => 'e-Mail' |
| 1551 | end | 1569 | end |
| 1552 | 1570 | ||
| 1553 | should 'show contact to friend' do | 1571 | should 'show contact to friend' do |
| @@ -1560,7 +1578,7 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1560,7 +1578,7 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1560 | login_as(friend.identifier) | 1578 | login_as(friend.identifier) |
| 1561 | get :index, :profile => viewed.identifier | 1579 | get :index, :profile => viewed.identifier |
| 1562 | assert_tag :tag => 'th', :content => 'Contact' | 1580 | assert_tag :tag => 'th', :content => 'Contact' |
| 1563 | - assert_tag :tag => 'td', :content => 'e-Mail:' | 1581 | + assert_tag :tag => 'td', :content => 'e-Mail' |
| 1564 | end | 1582 | end |
| 1565 | 1583 | ||
| 1566 | should 'show contact to self' do | 1584 | should 'show contact to self' do |
| @@ -1571,7 +1589,7 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1571,7 +1589,7 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1571 | login_as(viewed.identifier) | 1589 | login_as(viewed.identifier) |
| 1572 | get :index, :profile => viewed.identifier | 1590 | get :index, :profile => viewed.identifier |
| 1573 | assert_tag :tag => 'th', :content => 'Contact' | 1591 | assert_tag :tag => 'th', :content => 'Contact' |
| 1574 | - assert_tag :tag => 'td', :content => 'e-Mail:' | 1592 | + assert_tag :tag => 'td', :content => 'e-Mail' |
| 1575 | end | 1593 | end |
| 1576 | 1594 | ||
| 1577 | should 'not show contact to non friend' do | 1595 | should 'not show contact to non friend' do |
| @@ -1583,7 +1601,7 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1583,7 +1601,7 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1583 | login_as(strange.identifier) | 1601 | login_as(strange.identifier) |
| 1584 | get :index, :profile => viewed.identifier | 1602 | get :index, :profile => viewed.identifier |
| 1585 | assert_no_tag :tag => 'th', :content => 'Contact' | 1603 | assert_no_tag :tag => 'th', :content => 'Contact' |
| 1586 | - assert_no_tag :tag => 'td', :content => 'e-Mail:' | 1604 | + assert_no_tag :tag => 'td', :content => 'e-Mail' |
| 1587 | end | 1605 | end |
| 1588 | 1606 | ||
| 1589 | should 'show contact to friend even if private' do | 1607 | should 'show contact to friend even if private' do |
| @@ -1596,7 +1614,7 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1596,7 +1614,7 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1596 | login_as(friend.identifier) | 1614 | login_as(friend.identifier) |
| 1597 | get :index, :profile => viewed.identifier | 1615 | get :index, :profile => viewed.identifier |
| 1598 | assert_tag :tag => 'th', :content => 'Contact' | 1616 | assert_tag :tag => 'th', :content => 'Contact' |
| 1599 | - assert_tag :tag => 'td', :content => 'e-Mail:' | 1617 | + assert_tag :tag => 'td', :content => 'e-Mail' |
| 1600 | end | 1618 | end |
| 1601 | 1619 | ||
| 1602 | should 'show contact to self even if private' do | 1620 | should 'show contact to self even if private' do |
| @@ -1607,7 +1625,7 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1607,7 +1625,7 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1607 | login_as(viewed.identifier) | 1625 | login_as(viewed.identifier) |
| 1608 | get :index, :profile => viewed.identifier | 1626 | get :index, :profile => viewed.identifier |
| 1609 | assert_tag :tag => 'th', :content => 'Contact' | 1627 | assert_tag :tag => 'th', :content => 'Contact' |
| 1610 | - assert_tag :tag => 'td', :content => 'e-Mail:' | 1628 | + assert_tag :tag => 'td', :content => 'e-Mail' |
| 1611 | end | 1629 | end |
| 1612 | 1630 | ||
| 1613 | should 'not display list of communities to manage on menu by default' do | 1631 | should 'not display list of communities to manage on menu by default' do |
| @@ -1715,22 +1733,28 @@ class ProfileControllerTest < ActionController::TestCase | @@ -1715,22 +1733,28 @@ class ProfileControllerTest < ActionController::TestCase | ||
| 1715 | 1733 | ||
| 1716 | should 'show enterprises field if enterprises are enabled on environment' do | 1734 | should 'show enterprises field if enterprises are enabled on environment' do |
| 1717 | person = fast_create(Person) | 1735 | person = fast_create(Person) |
| 1736 | + enterprise = fast_create(Enterprise) | ||
| 1737 | + enterprise.add_admin person | ||
| 1718 | environment = person.environment | 1738 | environment = person.environment |
| 1719 | environment.disable('disable_asset_enterprises') | 1739 | environment.disable('disable_asset_enterprises') |
| 1720 | environment.save! | 1740 | environment.save! |
| 1721 | 1741 | ||
| 1722 | get :index, :profile => person.identifier | 1742 | get :index, :profile => person.identifier |
| 1723 | - assert_tag :tag => 'tr', :attributes => { :id => "person-profile-network-enterprises" } | 1743 | + assert_tag :tag => 'td', :content => 'Enterprises' |
| 1744 | + assert_tag :tag => 'td', :descendant => { :tag => 'a', :content => /#{person.enterprises.count}/, :attributes => { :href => /profile\/#{person.identifier}\/enterprises$/ }} | ||
| 1724 | end | 1745 | end |
| 1725 | 1746 | ||
| 1726 | should 'not show enterprises field if enterprises are disabled on environment' do | 1747 | should 'not show enterprises field if enterprises are disabled on environment' do |
| 1727 | person = fast_create(Person) | 1748 | person = fast_create(Person) |
| 1749 | + enterprise = fast_create(Enterprise) | ||
| 1750 | + enterprise.add_admin person | ||
| 1728 | environment = person.environment | 1751 | environment = person.environment |
| 1729 | environment.enable('disable_asset_enterprises') | 1752 | environment.enable('disable_asset_enterprises') |
| 1730 | environment.save! | 1753 | environment.save! |
| 1731 | 1754 | ||
| 1732 | get :index, :profile => person.identifier | 1755 | get :index, :profile => person.identifier |
| 1733 | - assert_no_tag :tag => 'tr', :attributes => { :id => "person-profile-network-enterprises" } | 1756 | + assert_no_tag :tag => 'td', :content => 'Enterprises' |
| 1757 | + assert_no_tag :tag => 'td', :descendant => { :tag => 'a', :content => /#{person.enterprises.count}/, :attributes => { :href => /profile\/#{person.identifier}\/enterprises$/ }} | ||
| 1734 | end | 1758 | end |
| 1735 | 1759 | ||
| 1736 | end | 1760 | end |