Merge lp:~jcsackett/launchpad/blueprint-private-traversal-deptree into lp:launchpad
Status: | Merged |
---|---|
Approved by: | j.c.sackett |
Approved revision: | no longer in the source branch. |
Merged at revision: | 16333 |
Proposed branch: | lp:~jcsackett/launchpad/blueprint-private-traversal-deptree |
Merge into: | lp:launchpad |
Prerequisite: | lp:~jcsackett/launchpad/blueprint-private-traversal |
Diff against target: |
240 lines (+134/-12) 4 files modified
lib/lp/blueprints/browser/configure.zcml (+10/-6) lib/lp/blueprints/browser/specificationdependency.py (+39/-0) lib/lp/blueprints/browser/tests/test_specificationdependency.py (+79/-0) lib/lp/blueprints/templates/specification-deptree.pt (+6/-6) |
To merge this branch: | bzr merge lp:~jcsackett/launchpad/blueprint-private-traversal-deptree |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Richard Harding (community) | Approve | ||
Review via email:
|
Commit message
Adjusts Specification:
Description of the change
Summary
=======
Much as with the SVG graph in Specification:
is not privacy aware and 403s when a person who can't see a dependency or
blocked specification tries to access it. It should, as with the graph, merely
remove the specs the user doesn't have permission for.
Preimp
======
None--extension of previous work.
Implementation
==============
The deptree view has been updated to use the filtered all_deps and all_blocked
methods created in the branch this branch depends on. It has also had new
methods added, "dependencies" and "blocked_specs" that filter the attributes
of the same name from the context. As these are all used multiple times in the
template, they are cachedproperties.
The blocked_specs and dependency portlets used on this page are also adapted
to accept the view rather than the context, so that they can use the new view
methods.
Tests
=====
bin/test -vvct TestDepTree
QA
==
Ensure Specification:
blueprint visibilities.
LoC
===
Part of private projects.
Lint
====
Checking for conflicts and issues in changed files.
Linting changed files:
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
Looks ok to me. As someone not familiar, is there something that tests that if you try to pull up where the root itself is non-public?