Homec4science

Make repository discovery partially testable

Authored by epriestley <git@epriestley.com> on May 13 2013, 04:08.

Description

Make repository discovery partially testable

Summary:
Ref T2784. Begins pulling discovery into Engines and covering it with tests. In particular:

  • Discovery is currently a one-shot process where we find all the new commits and write them to the database in one go. Split it apart so we find and return the new commits first, then write them to the database separately. This makes things simpler and more testable.
  • This diff only brings SVN into an engine (and only the "find the commits" part), since it's simpler than Git or Mercurial.
  • Creates a base Engine class and moves common functionality there.
  • Restores the --verbose flag to repository pull.

Test Plan: Added unit tests. Ran bin/repository discover. Ran bin/phd debug pulllocal.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T2784

Differential Revision: https://secure.phabricator.com/D5906

Details

Committed
epriestley <git@epriestley.com>May 13 2013, 04:08
Pushed
aubortJan 31 2017, 17:16
Parents
rPH105dd1899c35: Make repository pulls testable
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPHe7fde9a77c49: Make repository discovery partially testable (authored by epriestley <git@epriestley.com>).May 13 2013, 04:08