Skip to content

Commit 5a0fd29

Browse files
committed
Added test for logger
1 parent 13ed8b8 commit 5a0fd29

File tree

2 files changed

+43
-0
lines changed

2 files changed

+43
-0
lines changed

tests/src/python/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@ ADD_PYTHON_TEST(PyQgsComposerMap test_qgscomposermap.py)
44
ADD_PYTHON_TEST(PyQgsGeometry test_qgsgeometry.py)
55
ADD_PYTHON_TEST(PyQgsRasterLayer test_qgsrasterlayer.py)
66
ADD_PYTHON_TEST(PyQgsMemoryProvider test_qgsmemoryprovider.py)
7+
ADD_PYTHON_TEST(PyQgsLogger test_qgslogger.py)

tests/src/python/test_qgslogger.py

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import tempfile
2+
import os
3+
import unittest
4+
5+
from qgis.core import QgsLogger
6+
7+
# Convenience instances in case you may need them
8+
# not used in this test
9+
#from utilities import getQgisTestApp
10+
#QGISAPP, CANVAS, IFACE, PARENT = getQgisTestApp()
11+
12+
class TestQgsLogger(unittest.TestCase):
13+
14+
def testLogger(self):
15+
(myFileHandle, myFilename) = tempfile.mkstemp()
16+
try:
17+
myFile = os.fdopen(myFileHandle, "w")
18+
myFile.write("QGIS Logger Unit Test\n")
19+
myFile.close()
20+
os.environ['QGIS_DEBUG'] = '2'
21+
os.environ['QGIS_LOG_FILE'] = myFilename
22+
myLogger = QgsLogger()
23+
myLogger.debug('This is a debug')
24+
myLogger.warning('This is a warning')
25+
myLogger.critical('This is critical')
26+
#myLogger.fatal('Aaaargh...fatal'); #kills QGIS not testable
27+
myFile = open(myFilename, 'rt')
28+
myText = myFile.readlines()
29+
myExpectedText = ['QGIS Logger Unit Test\n',
30+
'This is a debug\n',
31+
'This is a warning\n',
32+
'This is critical\n']
33+
myMessage = ('Expected:\n---\n%s\n---\nGot:\n---\n%s\n---\n' %
34+
(myExpectedText, myText))
35+
self.assertEquals(myText, myExpectedText, myMessage)
36+
finally:
37+
pass
38+
os.remove(myFilename)
39+
40+
if __name__ == '__main__':
41+
unittest.main()
42+

0 commit comments

Comments
 (0)