valgrind-audit

来自「gpsd, a popular GPS daemon.」· 代码 · 共 92 行

TXT
92
字号
#!/usr/bin/env python## This is a valgrind torture test for the daemon.#import sys, gpsfake debuglevel=1invocation="valgrind --tool=memcheck --gen-suppressions=yes --leak-check=yes --suppressions=valgrind-suppressions"test = gpsfake.TestSession(prefix=invocation, options="-D %d" % debuglevel)test.progress = sys.stderr.writetry:    print "\n*** Test #1: Normal single-client-session behavior."    print "**** Add a GPS.\n"    gps1 = test.gps_add("test/bu303-moving.log")    print "\n**** Add and remove a client.\n"    c1 = test.client_add("w\n")    test.gather(3)    test.client_remove(c1)    print "\n**** Remove the GPS."    test.gps_remove(gps1)    print "*** Test #1 complete.\n"    test.wait(3)    ######################################################################    print "\n*** Test #2: Successive non-overlapping client sessions."    print "**** Add a GPS.\n"    gps1 = test.gps_add("test/bu303-climbing.log")    print "\n**** Add and remove first client.\n"    c1 = test.client_add("w\n")    test.gather(3)    test.client_remove(c1)    test.wait(3)    print "\n**** Add and remove second client.\n"    c2 = test.client_add("w\n")    test.gather(3)    test.client_remove(c2)    test.wait(3)    print "\n**** Remove the GPS."    test.gps_remove(gps1)    print "*** Test #2 complete.\n"    test.wait(3)    ######################################################################    print "\n*** Test #3: Overlapping client sessions."    print "**** Add a GPS.\n"    gps1 = test.gps_add("test/bu303-climbing.log")    print "\n**** Add first client.\n"    c1 = test.client_add("w\n")    test.gather(2)    print "\n**** Add second client.\n"    c2 = test.client_add("w\n")    test.gather(3)    print "\n**** Remove first client.\n"    test.client_remove(c1)    test.gather(2)    print "\n**** Remove second client.\n"    test.client_remove(c2)    print "\n**** Remove the GPS."    test.gps_remove(gps1)    print "*** Test #3 complete.\n"    ######################################################################    print "\n*** Test #4: GPS removed while client still active."    print "**** Add a GPS.\n"    gps1 = test.gps_add("test/bu303-moving.log")    print "\n**** Add a client.\n"    c1 = test.client_add("w\n")    test.gather(3)    print "\n**** Remove the GPS."    test.gps_remove(gps1)    test.wait(3)    print "\n**** Remove the client.\n"    test.client_remove(c1)    print "*** Test #4 complete.\n"    test.cleanup();finally:    test.killall();

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?