diff options
Diffstat (limited to 'import-layers/yocto-poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py')
-rw-r--r-- | import-layers/yocto-poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/import-layers/yocto-poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py b/import-layers/yocto-poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py deleted file mode 100644 index 3e634835e..000000000 --- a/import-layers/yocto-poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py +++ /dev/null @@ -1,88 +0,0 @@ -#! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# -# BitBake Toaster Implementation -# -# Copyright (C) 2016 Intel Corporation -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -import os - -from django.test import TestCase -from django.core import management - -from orm.models import signal_runbuilds - -import threading -import time -import subprocess -import signal - - -class KillRunbuilds(threading.Thread): - """ Kill the runbuilds process after an amount of time """ - def __init__(self, *args, **kwargs): - super(KillRunbuilds, self).__init__(*args, **kwargs) - self.setDaemon(True) - - def run(self): - time.sleep(5) - signal_runbuilds() - time.sleep(1) - - pidfile_path = os.path.join(os.environ.get("BUILDDIR", "."), - ".runbuilds.pid") - - with open(pidfile_path) as pidfile: - pid = pidfile.read() - os.kill(int(pid), signal.SIGTERM) - - -class TestCommands(TestCase): - """ Sanity test that runbuilds executes OK """ - - def setUp(self): - os.environ.setdefault("DJANGO_SETTINGS_MODULE", - "toastermain.settings_test") - os.environ.setdefault("BUILDDIR", - "/tmp/") - - # Setup a real database if needed for runbuilds process - # to connect to - management.call_command('migrate') - - def test_runbuilds_command(self): - kill_runbuilds = KillRunbuilds() - kill_runbuilds.start() - - manage_py = os.path.join( - os.path.dirname(os.path.abspath(__file__)), - os.pardir, - os.pardir, - "manage.py") - - command = "%s runbuilds" % manage_py - - process = subprocess.Popen(command, - shell=True, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE) - - (out, err) = process.communicate() - process.wait() - - self.assertNotEqual(process.returncode, 1, - "Runbuilds returned an error %s" % err) |