# Path: tests/conftest.py
# REASON_NOT_IMPLEMENTED = '' \
#     'Test case is not yet implemented, but a note of the requirement was made.'
# REASON_REQUIRES_KANO_OS = '' \
#     'Function makes system wide changes in Kano OS and was designed to' \
#     ' be executed in that environment, e.g. systemd, config files, etc.'
# def mock_file(file_path, mock_data=None):
# def is_kano_os():
# def is_pypkg_installed(modules):


import os
import unittest
import kano.utils as utils
import kano_settings.system.locale as locale
import kano_settings.system.keyboard_layouts as keyboard_layouts
from tests.conftest import mock_file, require_rpi
    @require_rpi
    def test_is_random_string_valid(self):
        self.assertFalse(locale.is_locale_valid('some_invalid_locale'))


class IsLocaleInstalled(unittest.TestCase):

    @require_rpi
    def test_is_en_US_installed(self):
        self.assertTrue(locale.is_locale_installed('en_US.UTF-8'))

    @require_rpi
    def test_is_en_GB_installed(self):
        self.assertTrue(locale.is_locale_installed('en_GB.UTF-8'))

    @require_rpi
    def test_is_ru_RU_installed(self):
        self.assertFalse(locale.is_locale_installed('ru_RU.UTF-8'))

    @require_rpi
    def test_is_aa_ER_installed(self):
        self.assertFalse(locale.is_locale_installed('aa_ER.UTF-8'))

    @require_rpi
    def test_is_random_string_installed(self):
        self.assertFalse(locale.is_locale_installed('some_ininstalled_locale'))


class InstallLocale(unittest.TestCase):


# Path: tests/conftest.py
# REASON_NOT_IMPLEMENTED = '' \
#     'Test case is not yet implemented, but a note of the requirement was made.'
# REASON_REQUIRES_KANO_OS = '' \
#     'Function makes system wide changes in Kano OS and was designed to' \
#     ' be executed in that environment, e.g. systemd, config files, etc.'
# def mock_file(file_path, mock_data=None):
# def is_kano_os():
# def is_pypkg_installed(modules):


# Path: tests/kano_settings_pkg/test_locale.py
import os
import unittest
import kano.utils as utils
import kano_settings.system.locale as locale
import kano_settings.system.keyboard_layouts as keyboard_layouts
from tests.conftest import mock_file, require_rpi

    @require_rpi
    def test_is_random_string_valid(self):
        self.assertFalse(locale.is_locale_valid('some_invalid_locale'))


class IsLocaleInstalled(unittest.TestCase):

    @require_rpi
    def test_is_en_US_installed(self):
        self.assertTrue(locale.is_locale_installed('en_US.UTF-8'))

    @require_rpi
    def test_is_en_GB_installed(self):
        self.assertTrue(locale.is_locale_installed('en_GB.UTF-8'))

    @require_rpi
    def test_is_ru_RU_installed(self):
        self.assertFalse(locale.is_locale_installed('ru_RU.UTF-8'))

    @require_rpi
    def test_is_aa_ER_installed(self):
        self.assertFalse(locale.is_locale_installed('aa_ER.UTF-8'))

    @require_rpi
    def test_is_random_string_installed(self):
        self.assertFalse(locale.is_locale_installed('some_ininstalled_locale'))


class InstallLocale(unittest.TestCase):


    @require_rpi