Skip to content

Commit 57aa7fd

Browse files
committed
Travis won: ported all test cases to Python
and disabled C++ companion test (still useful locally and for debugging) For the curious: QTemporaryFile is not working as expected
1 parent 36d827a commit 57aa7fd

File tree

4 files changed

+35
-3
lines changed

4 files changed

+35
-3
lines changed

ci/travis/linux/qt4/script.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,4 @@ if [ "${TRAVIS_PULL_REQUEST}" != "false" ]; then
2424
chmod -R ugo-w ~/.ccache
2525
fi
2626

27-
xvfb-run ctest -V -E 'qgis_openstreetmaptest|qgis_wcsprovidertest|qgis_ziplayertest|PyQgsDBManagerGpkg' -S ./qgis-test-travis.ctest --output-on-failure
27+
xvfb-run ctest -V -E 'qgis_filedownloader|qgis_openstreetmaptest|qgis_wcsprovidertest|qgis_ziplayertest|PyQgsDBManagerGpkg' -S ./qgis-test-travis.ctest --output-on-failure

ci/travis/linux/qt5/script.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,5 @@ fi
2525

2626
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
2727

28-
xvfb-run ctest -V -E "qgis_openstreetmaptest|qgis_wcsprovidertest|qgis_ziplayertest|qgis_ogcutilstest|$(cat ${DIR}/blacklist.txt | paste -sd '|' -)" -S ./qgis-test-travis.ctest --output-on-failure
28+
xvfb-run ctest -V -E "qgis_filedownloader|qgis_openstreetmaptest|qgis_wcsprovidertest|qgis_ziplayertest|qgis_ogcutilstest|$(cat ${DIR}/blacklist.txt | paste -sd '|' -)" -S ./qgis-test-travis.ctest --output-on-failure
2929
# xvfb-run ctest -V -E "qgis_openstreetmaptest|qgis_wcsprovidertest" -S ./qgis-test-travis.ctest --output-on-failure

tests/src/gui/testqgsfiledownloader.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ void TestQgsFileDownloader::init()
139139
mError = false;
140140
mCompleted = false;
141141
mExited = false;
142-
mTempFile = new QTemporaryFile( QDir::currentPath() + QDir::separator() + "qgs_filedownloader" );
142+
mTempFile = new QTemporaryFile( );
143143
Q_ASSERT( mTempFile->open() );
144144
mTempFile->close();
145145
}

tests/src/python/test_qgsfiledownloader.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ def test_validDownload(self):
6161
"""Tests a valid download"""
6262
destination = tempfile.mktemp()
6363
self._make_download('http://www.qgis.org', destination)
64+
self.assertTrue(self.exited_was_called)
6465
self.assertTrue(self.completed_was_called)
6566
self.assertTrue(self.progress_was_called)
6667
self.assertFalse(self.canceled_was_called)
@@ -72,6 +73,7 @@ def test_inValidDownload(self):
7273
"""Tests an invalid download"""
7374
destination = tempfile.mktemp()
7475
self._make_download('http://www.doesnotexistofthatimsure.qgis', destination)
76+
self.assertTrue(self.exited_was_called)
7577
self.assertFalse(self.completed_was_called)
7678
self.assertTrue(self.progress_was_called)
7779
self.assertFalse(self.canceled_was_called)
@@ -83,15 +85,45 @@ def test_dowloadCanceled(self):
8385
"""Tests user canceled download"""
8486
destination = tempfile.mktemp()
8587
self._make_download('https://github.com/qgis/QGIS/archive/master.zip', destination, True)
88+
self.assertTrue(self.exited_was_called)
8689
self.assertFalse(self.completed_was_called)
8790
self.assertTrue(self.canceled_was_called)
8891
self.assertFalse(self.error_was_called)
8992
self.assertFalse(os.path.isfile(destination))
9093

94+
def test_InvalidUrl(self):
95+
destination = tempfile.mktemp()
96+
self._make_download('xyz://www', destination)
97+
self.assertTrue(self.exited_was_called)
98+
self.assertFalse(self.completed_was_called)
99+
self.assertFalse(self.canceled_was_called)
100+
self.assertTrue(self.error_was_called)
101+
self.assertFalse(os.path.isfile(destination))
102+
self.assertEqual(self.error_args[1], [u"Network error 301: Protocol \"xyz\" is unknown"])
103+
104+
def test_InvalidFile(self):
105+
self._make_download('https://github.com/qgis/QGIS/archive/master.zip', "")
106+
self.assertTrue(self.exited_was_called)
107+
self.assertFalse(self.completed_was_called)
108+
self.assertFalse(self.canceled_was_called)
109+
self.assertTrue(self.error_was_called)
110+
self.assertEqual(self.error_args[1], [u"Cannot open output file: "])
111+
112+
def test_BlankUrl(self):
113+
destination = tempfile.mktemp()
114+
self._make_download('', destination)
115+
self.assertTrue(self.exited_was_called)
116+
self.assertFalse(self.completed_was_called)
117+
self.assertFalse(self.canceled_was_called)
118+
self.assertTrue(self.error_was_called)
119+
self.assertFalse(os.path.isfile(destination))
120+
self.assertEqual(self.error_args[1], [u"Network error 301: Protocol \"\" is unknown"])
121+
91122
def ssl_compare(self, name, url, error):
92123
destination = tempfile.mktemp()
93124
self._make_download(url, destination)
94125
msg = "Failed in %s: %s" % (name, url)
126+
self.assertTrue(self.exited_was_called)
95127
self.assertFalse(self.completed_was_called, msg)
96128
self.assertFalse(self.canceled_was_called, msg)
97129
self.assertTrue(self.error_was_called, msg)

0 commit comments

Comments
 (0)