Fixed ExtensionUpdaterTest.TestMultipleManifestDownloading.

This test assumed that the ExtensionDownloader schedules its fetchers
in the order that StartUpdateCheck() is called, when downloading more
than one ManifestFetchData. However, the ExtensionDownloader was updated
in http://crrev.com/171540 to use a RequestQueue, which schedules the
fetchers using a heap.

That heap sorts the requests by time to the next retry, which is 0
for all requests initially. The test didn't break before because
std::push_heap and std::pop_heap in all STL implementations used
happen to keep the same order when all requests have the same
priority (!). This assumption broke under TSAN/MSAN builds because
they use libc++, whose std::pop_heap changes the order of the
execution of the fetches.

This fix makes the test support its fetches in any order.

BUG=358712

Review URL: https://codereview.chromium.org/271873002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269554 0039d316-1c4b-4281-b951-d872f2087c98
parent 70d4d528
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment