HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/twisted/python/test/test_appdirs.py
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.

"""
Tests for the data directory support.
"""


try:
    from twisted.python import _appdirs
except ImportError:
    _appdirs = None  # type: ignore[assignment]

from twisted.trial import unittest


class AppdirsTests(unittest.TestCase):
    """
    Tests for L{_appdirs}.
    """

    if not _appdirs:
        skip = "appdirs package not installed"

    def test_moduleName(self) -> None:
        """
        Calling L{appdirs.getDataDirectory} will return a user data directory
        in the system convention, with the module of the caller as the
        subdirectory.
        """
        res = _appdirs.getDataDirectory()
        self.assertTrue(res.endswith("twisted.python.test.test_appdirs"))

    def test_manual(self) -> None:
        """
        Calling L{appdirs.getDataDirectory} with a C{moduleName} argument will
        make a data directory with that name instead.
        """
        res = _appdirs.getDataDirectory("foo.bar.baz")
        self.assertTrue(res.endswith("foo.bar.baz"))