Added tests for browsing object histories with redacted elements
This commit is contained in:
parent
e01a309970
commit
9c098816e5
5 changed files with 63 additions and 0 deletions
|
@ -73,6 +73,51 @@ class BrowseControllerTest < ActionController::TestCase
|
|||
def test_read_changeset
|
||||
browse_check 'changeset', changesets(:normal_user_first_change).id
|
||||
end
|
||||
|
||||
##
|
||||
# Methods to check redaction.
|
||||
#
|
||||
# note that these are presently highly reliant on the structure of the
|
||||
# page for the selection tests, which doesn't work out particularly
|
||||
# well if that structure changes. so... if you change the page layout
|
||||
# then please make it more easily (and robustly) testable!
|
||||
##
|
||||
def test_redacted_node_history
|
||||
get :node_history, :id => nodes(:redacted_node_redacted_version).node_id
|
||||
assert_response :success
|
||||
assert_template 'node_history'
|
||||
|
||||
# there are 2 revisions of the redacted node, but only one
|
||||
# should be showing up here.
|
||||
assert_select "body div[id=content] table[class=browse_details]", 1
|
||||
assert_select "body div[id=content] table[class=browse_details][id=1]", 0
|
||||
end
|
||||
|
||||
def test_redacted_way_history
|
||||
get :way_history, :id => ways(:way_with_redacted_versions_v1).way_id
|
||||
assert_response :success
|
||||
assert_template 'way_history'
|
||||
|
||||
# there are 4 revisions of the redacted way, but only 2
|
||||
# should be showing up here.
|
||||
assert_select "body div[id=content] table[class=browse_details]", 2
|
||||
# redacted revisions are 2 & 3
|
||||
assert_select "body div[id=content] table[class=browse_details][id=2]", 0
|
||||
assert_select "body div[id=content] table[class=browse_details][id=3]", 0
|
||||
end
|
||||
|
||||
def test_redacted_relation_history
|
||||
get :relation_history, :id => relations(:relation_with_redacted_versions_v1).relation_id
|
||||
assert_response :success
|
||||
assert_template 'relation_history'
|
||||
|
||||
# there are 4 revisions of the redacted relation, but only 2
|
||||
# should be showing up here.
|
||||
assert_select "body div[id=content] table[class=browse_details]", 2
|
||||
# redacted revisions are 2 & 3
|
||||
assert_select "body div[id=content] table[class=browse_details][id=2]", 0
|
||||
assert_select "body div[id=content] table[class=browse_details][id=3]", 0
|
||||
end
|
||||
|
||||
# This is a convenience method for most of the above checks
|
||||
# First we check that when we don't have an id, it will correctly return a 404
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue