Started asserting the FlutterEngine is running before communicating
over channels. This changes a null pointer exception to an
NSException that will provide some meaningful data to clients
incorrectly using the engine in an add-to-app situations.
Removed logic from FlutterAppDelegate into
FlutterPluginAppLifeCycleDelegate. This is a better place for
add-to-app since it doesn't require them to use our app delegate.
Made the engine and the view controllers have BinaryMessengers, not be
BinaryMessengers. This allows us to break retain cycles and makes the
leaking channels we have not less dire.
* Split out the run_tests script to a build_and_run_tests script to make
it easier to run the tests on luci.
* Made build and run pass in its argument to run.
* Added unit tests for the ios code.
* Moved the tests to live next to the source.
* Added mocking library.
* Fixed formatting and removed third_party from the format check.
* fixed formatting 2
* Removed ocmock from third_party.
* Added ocmock to third_party, compile from source.
* removed ocmock from license checking
* updated licenses_flutter
* updated tool_signature