Merge remote-tracking branch 'upstream/pull/1575'

This commit is contained in:
Tom Hughes 2017-07-06 19:15:55 +01:00
commit d4a461dc26
2 changed files with 36 additions and 8 deletions

View file

@ -141,14 +141,14 @@
<p class='deemphasize'>
<small>
<%= t 'user.view.mapper since' %> <%= l @this_user.creation_time.to_date, :format => :long %>
<% unless @this_user.terms_agreed %>
|
<%= t 'user.view.ct status' %>
<% if not @this_user.terms_agreed.nil? -%>
<%= t 'user.view.ct accepted', :ago =>time_ago_in_words(@this_user.terms_agreed) %>
<% elsif not @this_user.terms_seen? -%>
<%= t 'user.view.ct undecided' %>
<% else -%>
<% if @this_user.terms_seen? -%>
<%= t 'user.view.ct declined' %>
<% else -%>
<%= t 'user.view.ct undecided' %>
<% end -%>
<% end -%>
</small>
</p>

View file

@ -1007,6 +1007,34 @@ class UserControllerTest < ActionController::TestCase
end
end
# Test whether information about contributor terms is shown for users who haven't agreed
def test_terms_not_agreed
agreed_user = create(:user, :terms_agreed => 3.days.ago)
seen_user = create(:user, :terms_seen => true)
not_seen_user = create(:user, :terms_seen => false)
get :view, :params => { :display_name => agreed_user.display_name }
assert_response :success
assert_select "div#userinformation" do
assert_select "p", :count => 0, :text => /Contributor terms/
end
get :view, :params => { :display_name => seen_user.display_name }
assert_response :success
# put @response.body
assert_select "div#userinformation" do
assert_select "p", :count => 1, :text => /Contributor terms/
assert_select "p", /Declined/
end
get :view, :params => { :display_name => not_seen_user.display_name }
assert_response :success
assert_select "div#userinformation" do
assert_select "p", :count => 1, :text => /Contributor terms/
assert_select "p", /Undecided/
end
end
def test_api_read
user = create(:user, :description => "test", :terms_agreed => Date.yesterday)
# check that a visible user is returned properly