[Web Apps] Further test system refactoring.

This CL adds more constraints to the Web App testing system. Web App
unit tests will now be notified when they attempt to alter subsystems
outside of the correct part of the lifecycle (between construction and
Start()).

This CL now also requires all tests to call Start() on the provider
manually before accessing any WebAppProvider subsystems.

Bug: 973324
Change-Id: I60db6562f0b478fa6ce074014397220488e3f549
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1703535
Commit-Queue: calamity <[email protected]>
Reviewed-by: Giovanni Ortuño Urquidi <[email protected]>
Cr-Commit-Position: refs/heads/master@{#679902}
11 files changed