[AW NS] provide proper user_agent in onDownloadStart callback and add tests

The user agent is not necessarily set in the request headers
during InterceptDownload (e.g. because they are not initialized yet).

In this patch:
- make sure a user agent is set in the case of uninitialized headers.
- make sure the user agent override is used when it is set by using
- add download related instrumentation tests for the user agent

- AwContentsTest.testDownload
- AwContentsTest.testDownloaWithCustomUserAgent


Cq-Include-Trybots: master.tryserver.chromium.android:android_mojo
Change-Id: Ifc432fd93dd68ffb7416a25b6d6d1b5d1021e327
Reviewed-on: https://chromium-review.googlesource.com/c/1477606
Commit-Queue: Tim Volodine <timvolodine@chromium.org>
Reviewed-by: Richard Coles <torne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#634890}
3 files changed