5 Commits

Author SHA1 Message Date
Todd Volkert
69bcfc082f Minor touch-ups in ProcessManager impls (#7196) 2016-12-08 09:51:05 -08:00
Todd Volkert
1155f96651 Add tests for process_manager.dart (#7178) 2016-12-07 21:03:58 -08:00
Todd Volkert
7536404b20 Add --replay-from argument to Flutter tools (#7146)
This argument will enable mocking of os-layer process invocations,
where the mock behavior will come from replaying a previously-
recorded set of invocations. At the point of process invocation,
the key metadata for the invocation will be looked up in the
recording's manifest, and iff a matching record exists in the
manifest, the process will be mocked out with data derived from
the corresponding recorded process (e.g. stdout, stderr, exit code).
2016-12-06 10:09:00 -08:00
Todd Volkert
c9e7782adb Add --record-to option to flutter tools (#7136)
* Add --record-to option to flutter tools

This option will cause flutter tools to record all process
invocations that occur and serialize their stdout and stderr
to files that get added to a "recording" ZIP file. This is
part of an effort to be able to test flutter tools in a hermetic
environment.

As a side-benefit, this recording should prove an excellent
attachment to any bug report.
2016-12-02 13:39:54 -08:00
Todd Volkert
60b19b2035 Create abstraction layer for dart:io's Process commands (#7100)
With this change, they're run via instance methods on an object
obtained through the context. This will allow us to substitute
that object in tests with replay/record versions to allow us to
mock out the os-layer in tests.
2016-11-30 08:42:42 -08:00