]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
Add test to simply run a few binaries
authorJeff Peeler <jpeeler@redhat.com>
Sat, 8 Dec 2012 04:18:31 +0000 (23:18 -0500)
committerJeff Peeler <jpeeler@redhat.com>
Mon, 10 Dec 2012 16:55:07 +0000 (11:55 -0500)
This is not really a unit test, but it's so fast that I think it could
be considered as such. And it would be nice to gate on such blatant
breakage.

Change-Id: I8ff4ca27a912c30bd962168418ac44217ea9e54d
Signed-off-by: Jeff Peeler <jpeeler@redhat.com>
heat/tests/test_cli.py [new file with mode: 0644]

diff --git a/heat/tests/test_cli.py b/heat/tests/test_cli.py
new file mode 100644 (file)
index 0000000..4291888
--- /dev/null
@@ -0,0 +1,41 @@
+# vim: tabstop=4 shiftwidth=4 softtabstop=4
+
+#    Licensed under the Apache License, Version 2.0 (the "License"); you may
+#    not use this file except in compliance with the License. You may obtain
+#    a copy of the License at
+#
+#         http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing, software
+#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+#    License for the specific language governing permissions and limitations
+#    under the License.
+
+
+from nose.plugins.attrib import attr
+import unittest
+import heat
+import os
+import subprocess
+
+basepath = os.path.join(heat.__path__[0], os.path.pardir)
+
+
+@attr(tag=['unit', 'cli'])
+@attr(speed='medium')
+class CliTest(unittest.TestCase):
+
+    def test_bins(self):
+        bins = ['heat-cfn', 'heat-boto', 'heat-watch']
+
+        for bin in bins:
+            fullpath = basepath + '/bin/' + bin
+
+            proc = subprocess.Popen(fullpath,
+                stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+            stdout, stderr = proc.communicate()
+
+            if proc.returncode:
+                print 'Error executing %s:\n %s %s ' % (bin, stdout, stderr)
+                raise subprocess.CalledProcessError(proc.returncode, bin)