Page MenuHomePhabricator

Rough version of configuration driven unit test engine
ClosedPublic

Authored by joshuaspence on Jul 7 2015, 2:07 PM.
Tags
None
Referenced Files
F14390296: D13579.id32820.diff
Sat, Dec 21, 6:19 PM
Unknown Object (File)
Mon, Dec 16, 7:42 AM
Unknown Object (File)
Fri, Dec 13, 12:16 PM
Unknown Object (File)
Fri, Dec 13, 11:24 AM
Unknown Object (File)
Thu, Dec 5, 7:07 AM
Unknown Object (File)
Thu, Nov 28, 11:07 AM
Unknown Object (File)
Wed, Nov 27, 8:26 PM
Unknown Object (File)
Mon, Nov 25, 1:10 AM

Details

Summary

Ref T5568. As discussed in IRC. This is very rough and not widely useable, but represents a solid first step.

Test Plan

Ran arc unit with a bunch of flags.

Event Timeline

joshuaspence retitled this revision from to Rough version of configuration driven unit test engine.
joshuaspence updated this object.
joshuaspence edited the test plan for this revision. (Show Details)
joshuaspence added a reviewer: epriestley.
epriestley edited edge metadata.
epriestley added inline comments.
src/unit/engine/ArcanistConfigurationDrivenTestEngine.php
7 ↗(On Diff #32820)

Maybe only true if at least one configured engine supports --everything.

69–72 ↗(On Diff #32820)

Could we just do the type check first, and simplify this a bit?

120 ↗(On Diff #32820)

I think we should move away from support for this (and "postponed" linters) -- these models never really made sense, and Harbormaster is on the horizon now. Fine to maintain support if it's "free", but feel free to just drop it if it's non-free, too.

125 ↗(On Diff #32820)

At some point, maybe we should emit a warning here if an engine doesn't support --everything, to reduce surprise when --everything does not really mean --everything.

128 ↗(On Diff #32820)

Consider type checking the results, similar to D13486, to place blame on bad engines more clearly.

150 ↗(On Diff #32820)

(Is this essentially identical to something in the Lint engine?)

This revision is now accepted and ready to land.Jul 7 2015, 3:34 PM
joshuaspence marked an inline comment as done.

Only support --everything if at least one of the configured test engines supports it

joshuaspence marked an inline comment as done.

Rename class for consistency

joshuaspence marked an inline comment as done.

Add a bunch of TODOs

joshuaspence edited the test plan for this revision. (Show Details)

We're using this as part of our development workflow now and it's nice. It would be nice if it made use of our phpunit.xml configuration, but we can work around that for now. I hope this lands on master soon.

Thanks @joshuaspence!

This revision was automatically updated to reflect the committed changes.