forked from robotframework/PythonRemoteServer
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlogging.py
More file actions
40 lines (31 loc) · 1.24 KB
/
Copy pathlogging.py
File metadata and controls
40 lines (31 loc) · 1.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import sys
class Logging(object):
def logging(self, message, level='', evaluate=False, stderr=False):
if evaluate and evaluate != 'False':
message = eval(message)
if level:
message = '*%s* %s' % (level, message)
stream = sys.stdout if not stderr else sys.stderr
stream.write(message + '\n')
def multiple_messages_with_different_levels(self):
print 'Info message'
print '*DEBUG* Debug message'
print '*INFO* Second info'
print 'this time with two lines'
print '*INFO* Third info'
print '*TRACE* This is ignored'
print '*WARN* Warning'
def logging_and_failing(self):
print '*INFO* This keyword will fail!'
print '*WARN* Run for your lives!!'
raise AssertionError('Too slow')
def logging_and_returning(self, logged, returned):
print logged
return returned
def logging_both_to_stdout_and_stderr(self, *messages):
for index, msg in enumerate(messages):
stream = sys.stdout if index % 2 == 0 else sys.stderr
stream.write(msg)
if __name__ == '__main__':
from robotremoteserver import RobotRemoteServer
RobotRemoteServer(Logging(), '127.0.0.1', *sys.argv[1:])