]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
blackbox tests: method to check specific exit codes
authorGary Lockyer <gary@catalyst.net.nz>
Wed, 16 Aug 2017 01:52:25 +0000 (13:52 +1200)
committerKarolin Seeger <kseeger@samba.org>
Tue, 14 Nov 2017 11:39:13 +0000 (12:39 +0100)
Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
(cherry picked from commit 74ebcf6dfc84b6aab6838fa99e12808eb6b913d9)

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13127

python/samba/tests/__init__.py

index 62b2d99e045f70e04482fa8986a9a3262e13e6d3..2c8fa192137c2e0193a16668b6001ea9f00ff7ef 100644 (file)
@@ -1111,11 +1111,20 @@ class BlackboxTestCase(TestCaseInTempDir):
         return line
 
     def check_run(self, line):
+        self.check_exit_code(line, 0)
+
+    def check_exit_code(self, line, expected):
         line = self._make_cmdline(line)
-        p = subprocess.Popen(line, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
+        p = subprocess.Popen(line,
+                             stdout=subprocess.PIPE,
+                             stderr=subprocess.PIPE,
+                             shell=True)
         retcode = p.wait()
-        if retcode:
-            raise BlackboxProcessError(retcode, line, p.stdout.read(), p.stderr.read())
+        if retcode != expected:
+            raise BlackboxProcessError(retcode,
+                                       line,
+                                       p.stdout.read(),
+                                       p.stderr.read())
 
     def check_output(self, line):
         line = self._make_cmdline(line)