-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
-
Workaround Exists
-
- Ensure the expected $HOME/.arquillian/drone/subdirectory_specific_to_binary archive has correct size / checksum.
- Rerun the test.
-
Undefined
From How it works? section of Arquillian Drone extension:
Let say that I want to use Chrome for my UI tests. First of all, Drone checks if the path to the webdriver binary isn’t already set. In this case it would check a system property webdriver.chrome.driver; if this is empty then it checks arquillian.xml property: chromeDriverBinary. In case that both properties are empty, then the automatic download comes up.
Now we have several options how to specify which binary should be downloaded and where it should be stored. For storage purposes cache directories $HOME/.arquillian/drone/subdirectory_specific_to_binary are used so the binaries are not downloaded over and over again.
The fact / behavior about not repeating the downloads of possibly previously existing WebDriver binaries required by the environment / test is OK.
The issue is once the $HOME/.arquillian/drone/subdirectory_specific_to_binary location already exists (example: /home/iankko/.arquillian/drone/phantomjs/2.1.1/phantomjs-2.1.1-linux-x86_64.tar.bz2) the MD5 / SHA256 checksum of the archive isn't compared against the checksum of the original file, that was supposed to be downloaded possibly leading to expand / untar corrupted / partial *.bz2 files:
$ md5sum /home/iankko/.arquillian/drone/phantomjs/2.1.1/phantomjs-2.1.1-linux-x86_64.tar.bz2 40ead921d7796808e972ae0e96204481 /home/iankko/.arquillian/drone/phantomjs/2.1.1/phantomjs-2.1.1-linux-x86_64.tar.bz2
while the MD5 sum of the original file, expected to be downloaded:
https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
is completely different:
$ wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
$ md5sum phantomjs-2.1.1-linux-x86_64.tar.bz2 1c947d57fce2f21ce0b43fe2ed7cd361 phantomjs-2.1.1-linux-x86_64.tar.bz2
Further information:
See KEYCLOAK-16434 issue for more details / steps about how this issue was recognized by running Keycloak's Javascript adapter test.