Comment 3 for bug 1881040

Revision history for this message
Shaheed Haque (srhaque-i) wrote :

Thanks for the replies.

The main issue for me was that chromedriver - by design as I understand it - does not have Chromium use the normal ~/Downloads folder, but one that has to be configured when initialising chromedriver. I cannot easily share the code, but here is an extract (code like this is widely shared on the web):

self.driver.command_executor._commands["send_command"] = (
  "POST", '/session/$sessionId/chromium/send_command'
)
self.driver.execute("send_command", {
 'cmd': 'Page.setDownloadBehavior', 'params': {'behavior': 'allow', 'downloadPath': /a/place/}}
)

The issue is that the snap setup ignores this location. So tests which are expecting file to end up under "/a/place" don't find them.

Now, while investigating this, I may have mistakenly thought that the lack of the ~/snap/.../Downloads was the problem. Though with hindsight, it might have been because the directory did not exist rather than, as you say, the directory not being writeable if created. At any rate I suspect that, as above, chromedriver will set up Chromium not to use this folder in any event. In other words, this is likely a red-herring.