Add dependency checks for Perforce.

Review Request #12550 — Created Aug. 18, 2022 and submitted — Latest diff uploaded

Information

RBTools
release-4.x

Reviewers

This updates PerforceClient to add formal support for dependency
checks. PerforceClient.check_dependencies() now determines if p4 is
installed via the existing wrapper class's is_supported() method.

PerforceClient.get_local_path() now calls this instead of checking for
dependencies itself, emitting a warning if dependencies haven't already
been checked via setup() or has_dependencies().

Unit tests have been updated to include new dependency-related tests.
These tests aren't sensitive to p4 anyway as they already simulate
responses rather than calling into it, so there's no change in behavior
here.

Unit tests pass on Python 3.7-3.11.

Commits

Files