Dark Mode: make a testable WebUIDataSource for unit tests

There was no easy way to get at the set load time data keys/values nor
the $i18n{} placeholder strings.  My upcoming work for dark mode
requires a key be set whether or not dark mode is enabled or on.

I'm adding TestWebUIDataSource in hopes that it's more generically
useful, as TestWebUI has been.

Example use here: https://crrev.com/c/1354685

R=sky@chromium.org
BUG=883049

Change-Id: I2214fcbd4693f82e44d0a0e679c993391c64fba8
Reviewed-on: https://chromium-review.googlesource.com/c/1357612
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Dan Beam <dbeam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#613461}
6 files changed