CodeOwnerResolver: Fix visibility checks if user is given

CodeOwnerResolver checks the visibility of the code owners, either for
the user provided by calling the forUser(IdentifiedUser) method or the
calling user.

So far if a user was provided by calling the forUser(IdentifiedUser)
method this user was only used for the account visibility check (see
canSee(AccountState) method) but not for the visibility checks of
secondary emails. The latter always used the current user. Fix this and
extend the tests to cover this case.

While we are here also update the javadocs that only spoke about
checking visibility for the calling user, while actually it could be a
different user, if one was provided by calling the
forUser(IdentifiedUser) method.

Signed-off-by: Edwin Kempin <ekempin@google.com>
Change-Id: Icbb3627051cb546fc1823dfa85e9161d1f9f3e5e
2 files changed
tree: b96fd467499665315c631aca4f0ee58100dd897b
  1. java/
  2. javatests/
  3. proto/
  4. resources/
  5. test/
  6. ui/
  7. .eslintrc.json
  8. .gitignore
  9. .gitreview
  10. bower.json
  11. BUILD
  12. LICENSE
  13. package-lock.json
  14. package.json
  15. README.md
README.md

Gerrit Code Review code-owners plugin

This plugin provides support for defining code owners for files in a repository.

If the code-owners plugin is enabled, changes can only be submitted if all touched files are covered by approvals from code owners.

Also see resources/Documentation/about.md

IMPORTANT: Before installing/enabling the plugin follow the instructions from the setup guide, see resources/Documentation/setup-guide.md