none [kbd-scrolllock] kbd-numlock kbd-capslock kbd-kanalock kbd-shiftlock kbd-altgrlock kbd-ctrllock kbd-altlock kbd-shiftllock kbd-shiftrlock kbd-ctrlllock kbd-ctrlrlock 
  "   ˆl–ßi~”êh¥8 Z¸!\e•1hßÁƒ€÷À¿ ¸    from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin


class Composer(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin):
    """Lorax Composer
    """

    plugin_name = 'composer'
    profiles = ('sysmgmt', 'virt', )

    packages = ('composer-cli',)

    def _get_entries(self, cmd):
        entries = []
        ent_file = self.collect_cmd_output(cmd)
        if ent_file['status'] == 0:
            for line in ent_file['output'].splitlines():
                entries.append(line)
        return entries

    def setup(self):
        self.add_copy_spec([
            "/etc/lorax/composer.conf",
            "/var/log/lorax-composer/composer.log",
            "/var/log/lorax-composer/dnf.log",
            "/var/log/lorax-composer/program.log",
            "/var/log/lorax-composer/server.log",
        ])
        blueprints = self._get_entries("composer-cli blueprints list")
        for blueprint in blueprints:
            self.add_cmd_output("composer-cli blueprints show %s" % blueprint)

        sources = self._get_entries("composer-cli sources list")
        for src in sources:
            self.add_cmd_output("composer-cli sources info %s" % src)

# vim: set et ts=4 sw=4 :
     ˆ¾ÁƒM½À¿ ²    # Copyright (C) 2014 Red Hat, Inc., Bryn M. Reeves <bmr@redhat.com>

# This file is part of the sos project: https://github.com/sosreport/sos
#
# This copyrighted material is made available to anyone wishing to use,
# modify, copy, or redistribute it subject to the terms and conditions of
# version 2 of the GNU General Public License.
#
# See the LICENSE file in the source distribution for further information.

from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin


class Ctdb(Plugin, DebianPlugin, UbuntuPlugin):
    """Samba Clustered TDB
    """
    packages = ('ctdb',)
    profiles = ('cluster', 'storage')
    plugin_name = "ctdb"

    def setup(self):
        self.add_copy_spec([
            "/etc/ctdb/ctdb.conf",
            "/etc/ctdb/*.options",
            "/etc/ctdb/nodes",
            "/etc/ctdb/public_addresses",
            "/etc/ctdb/static-routes",
            "/etc/ctdb/multipathd",
            "/var/log/log.ctdb"
        ])

        self.add_cmd_output([
            "ctdb ip",
            "ctdb ping",
            "ctdb status",
            "ctdb ifaces",
            "ctdb listnodes",
            "ctdb listvars",
            "ctdb statistics",
            "ctdb getdbmap",
            "ctdb event script list legacy"
        ])


class RedHatCtdb(Ctdb, RedHatPlugin):
    def setup(self):
        super(RedHatCtdb, self).setup()
        self.add_copy_spec("/etc/sysconfig/ctdb")

# vim: set et ts=4 sw=4 :
  #   ˆl–Ãa¾””ËmJq@;p ¸Å£Â„iñ ?ÁÀ ?÷     import sys
import types


import unittest


class Test_TestLoader(unittest.TestCase):

    ### Tests for TestLoader.loadTestsFromTestCase
    ################################################################

    # "Return a suite of all tests cases contained in the TestCase-derived
    # class testCaseClass"
    def test_loadTestsFromTestCase(self):
        class Foo(unittest.TestCase):
            def test_1(self): pass
            def test_2(self): pass
            def foo_bar(self): pass

        tests = unittest.TestSuite([Foo('test_1'), Foo('test_2')])

        loader = unittest.TestLoader()
        self.assertEqual(loader.loadTestsFromTestCase(Foo), tests)

    # "Return a suite of all tests cases contained in the TestCase-derived
    # class testCaseClass"
    #
    # Make sure it does the right thing even if no tests were found
    def test_loadTestsFromTestCase__no_matches(self):
        class Foo(unittest.TestCase):
            def foo_bar(self): pass

        empty_suite = unittest.TestSuite()

        loader = unittest.TestLoader()
        self.assertEqual(loader.loadTestsFromTestCase(Foo), empt