qemu/tests/avocado/machine_arm_n8x0.py
<<
>>
Prefs
   1# Functional test that boots a Linux kernel and checks the console
   2#
   3# Copyright (c) 2020 Red Hat, Inc.
   4#
   5# Author:
   6#  Thomas Huth <thuth@redhat.com>
   7#
   8# This work is licensed under the terms of the GNU GPL, version 2 or
   9# later.  See the COPYING file in the top-level directory.
  10
  11import os
  12
  13from avocado import skipUnless
  14from avocado_qemu import QemuSystemTest
  15from avocado_qemu import wait_for_console_pattern
  16
  17class N8x0Machine(QemuSystemTest):
  18    """Boots the Linux kernel and checks that the console is operational"""
  19
  20    timeout = 90
  21
  22    def __do_test_n8x0(self):
  23        kernel_url = ('http://stskeeps.subnetmask.net/meego-n8x0/'
  24                      'meego-arm-n8x0-1.0.80.20100712.1431-'
  25                      'vmlinuz-2.6.35~rc4-129.1-n8x0')
  26        kernel_hash = 'e9d5ab8d7548923a0061b6fbf601465e479ed269'
  27        kernel_path = self.fetch_asset(kernel_url, asset_hash=kernel_hash)
  28
  29        self.vm.set_console(console_index=1)
  30        self.vm.add_args('-kernel', kernel_path,
  31                         '-append', 'printk.time=0 console=ttyS1')
  32        self.vm.launch()
  33        wait_for_console_pattern(self, 'TSC2005 driver initializing')
  34
  35    @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code')
  36    def test_n800(self):
  37        """
  38        :avocado: tags=arch:arm
  39        :avocado: tags=machine:n800
  40        """
  41        self.__do_test_n8x0()
  42
  43    @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code')
  44    def test_n810(self):
  45        """
  46        :avocado: tags=arch:arm
  47        :avocado: tags=machine:n810
  48        """
  49        self.__do_test_n8x0()
  50