From f0cccb3189c07c3920c07191821b7ea7fd512177 Mon Sep 17 00:00:00 2001 From: Todd Fiala Date: Wed, 9 Dec 2015 18:01:19 +0000 Subject: [PATCH] create 3 issues for testbots: FAIL, ERROR (exceptional), and TIMEOUT This change is a trial balloon to verify that the default test summary output sends the right output for the buildbot issue detection script. The effect of this change will be reverted after verifying the testbot behavior. This change will not stay in as is and will knowingly create noise, see this thread: http://lists.llvm.org/pipermail/lldb-dev/2015-December/009048.html llvm-svn: 255131 --- .../test/issue_verification/README.txt | 5 ++++ .../test/issue_verification/TestFail.py | 16 ++++++++++++ .../test/issue_verification/TestSignal.py | 26 +++++++++++++++++++ .../test/issue_verification/TestTimeout.py | 19 ++++++++++++++ 4 files changed, 66 insertions(+) create mode 100644 lldb/packages/Python/lldbsuite/test/issue_verification/README.txt create mode 100644 lldb/packages/Python/lldbsuite/test/issue_verification/TestFail.py create mode 100644 lldb/packages/Python/lldbsuite/test/issue_verification/TestSignal.py create mode 100644 lldb/packages/Python/lldbsuite/test/issue_verification/TestTimeout.py diff --git a/lldb/packages/Python/lldbsuite/test/issue_verification/README.txt b/lldb/packages/Python/lldbsuite/test/issue_verification/README.txt new file mode 100644 index 000000000000..0f1ae7f0ecfc --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/issue_verification/README.txt @@ -0,0 +1,5 @@ +Tests in this directory are intentionally setup to +fail, error, timeout, etc. to verify that the buildbots +pick up errors. The tests in this directory will be +parked/removed/renamed after verifying they trigger +as expected. diff --git a/lldb/packages/Python/lldbsuite/test/issue_verification/TestFail.py b/lldb/packages/Python/lldbsuite/test/issue_verification/TestFail.py new file mode 100644 index 000000000000..da64bc0ea8c1 --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/issue_verification/TestFail.py @@ -0,0 +1,16 @@ +"""Tests that a FAIL is detected by the testbot.""" + +from __future__ import print_function + +import lldbsuite.test.lldbtest as lldbtest + + +class FailTestCase(lldbtest.TestBase): + """Forces test failure.""" + mydir = lldbtest.TestBase.compute_mydir(__file__) + + def test_buildbot_catches_failure(self): + """Issues a failing test assertion.""" + self.assertTrue( + False, + "This will always fail, buildbot should flag this.") diff --git a/lldb/packages/Python/lldbsuite/test/issue_verification/TestSignal.py b/lldb/packages/Python/lldbsuite/test/issue_verification/TestSignal.py new file mode 100644 index 000000000000..d73ac74b47b2 --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/issue_verification/TestSignal.py @@ -0,0 +1,26 @@ +"""Tests that an exceptional exit is detected by the testbot.""" + +from __future__ import print_function + +import os +import signal +import time + +import lldbsuite.test.lldbtest as lldbtest + + +class ExceptionalExitTestCase(lldbtest.TestBase): + """Forces exceptional exit.""" + mydir = lldbtest.TestBase.compute_mydir(__file__) + + @lldbtest.skipIfWindows + def test_buildbot_catches_exceptional_exit(self): + """Force process to die with exceptional exit.""" + + # Sleep for a couple seconds + try: + time.sleep(5) + except: + pass + + os.kill(os.getpid(), signal.SIGKILL) diff --git a/lldb/packages/Python/lldbsuite/test/issue_verification/TestTimeout.py b/lldb/packages/Python/lldbsuite/test/issue_verification/TestTimeout.py new file mode 100644 index 000000000000..ba7be454f9a9 --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/issue_verification/TestTimeout.py @@ -0,0 +1,19 @@ +"""Tests that a timeout is detected by the testbot.""" +from __future__ import print_function + +import time + +import lldbsuite.test.lldbtest as lldbtest + + +class TimeoutTestCase(lldbtest.TestBase): + """Forces test timeout.""" + mydir = lldbtest.TestBase.compute_mydir(__file__) + + def test_buildbot_catches_timeout(self): + """Tests that timeout logic kicks in and is picked up.""" + while True: + try: + time.sleep(1) + except: + print("ignoring exception during sleep") -- GitLab