diff --git a/.github/workflows/execute-tests.yml b/.github/workflows/execute-tests.yml index cc0d61e..00319f5 100644 --- a/.github/workflows/execute-tests.yml +++ b/.github/workflows/execute-tests.yml @@ -15,6 +15,7 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip + pip install -r requirements-dev.txt pip install -r requirements.txt - name: Run pytest run: | diff --git a/README.md b/README.md index d20004c..1013241 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@
- +
diff --git a/src/coloured_logger/__init__.py b/coloured_logger/__init__.py similarity index 67% rename from src/coloured_logger/__init__.py rename to coloured_logger/__init__.py index 8f6d526..1df7658 100644 --- a/src/coloured_logger/__init__.py +++ b/coloured_logger/__init__.py @@ -2,11 +2,11 @@ __email__ = "oscar.defelice@gmail.com" __title__ = "Coloured Logger" __description__ = "A coloured logger for Python" -__version__ = "1.0.2" +__version__ = "1.0.3" __license__ = "MIT" -# Path: src/coloured_logger/__init__.py -from src.coloured_logger.logger import Logger +# Path: coloured_logger/__init__.py +from coloured_logger.logger import Logger __all__ = [ "logger_config", diff --git a/src/coloured_logger/logger.py b/coloured_logger/logger.py similarity index 97% rename from src/coloured_logger/logger.py rename to coloured_logger/logger.py index 1686252..338de6a 100644 --- a/src/coloured_logger/logger.py +++ b/coloured_logger/logger.py @@ -3,7 +3,7 @@ import logging -from src.coloured_logger.logger_config import COLOURS, RESET_SEQ, COLOR_SEQ, BOLD_SEQ +from coloured_logger.logger_config import COLOURS, RESET_SEQ, COLOR_SEQ, BOLD_SEQ def formatter_message(message, use_color=True): diff --git a/src/coloured_logger/logger_config.py b/coloured_logger/logger_config.py similarity index 100% rename from src/coloured_logger/logger_config.py rename to coloured_logger/logger_config.py diff --git a/src/__init__.py b/coloured_logger/utils/__init__.py similarity index 100% rename from src/__init__.py rename to coloured_logger/utils/__init__.py diff --git a/src/coloured_logger/utils/clear_handlers.py b/coloured_logger/utils/clear_handlers.py similarity index 100% rename from src/coloured_logger/utils/clear_handlers.py rename to coloured_logger/utils/clear_handlers.py diff --git a/requirements-dev.txt b/requirements-dev.txt new file mode 100644 index 0000000..f79c56b --- /dev/null +++ b/requirements-dev.txt @@ -0,0 +1,4 @@ +pre-commit==3.0.4 +black==22.10.0 +pytest==7.2.1 +pytest-cov==4.0.0 diff --git a/requirements.txt b/requirements.txt index f79c56b..e69de29 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +0,0 @@ -pre-commit==3.0.4 -black==22.10.0 -pytest==7.2.1 -pytest-cov==4.0.0 diff --git a/setup.py b/setup.py index 44759af..015d877 100644 --- a/setup.py +++ b/setup.py @@ -1,8 +1,7 @@ """ Setup file for the package.""" #!/usr/bin/env python3 import os -from src import coloured_logger -from src.coloured_logger import ( +from coloured_logger import ( __version__, __description__, __author__, @@ -33,7 +32,7 @@ def read(fname): long_description_content_type="text/markdown", keywords="security,scanner", url="https://github.com/oscar-defelice/%s" % pypi_name, - packages=find_packages(where="src"), + packages=find_packages(), package_dir={"": "src"}, include_package_data=True, install_requires=requirements, diff --git a/src/coloured_logger/utils/__init__.py b/src/coloured_logger/utils/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/tests/test_coloured_logger.py b/tests/test_coloured_logger.py index 6ee43e7..4ffd950 100644 --- a/tests/test_coloured_logger.py +++ b/tests/test_coloured_logger.py @@ -1,7 +1,7 @@ """Module to collect all tests for the logger module.""" import pytest -from src.coloured_logger.logger import ColouredLogger, ColouredFormatter, formatter_message +from coloured_logger.logger import ColouredLogger, ColouredFormatter, formatter_message import logging @@ -9,30 +9,44 @@ def test_formatter_message_with_color(): formatted_message = formatter_message("$BOLDHello$RESET", use_color=True) assert formatted_message == "\033[1mHello\033[0m" + def test_formatter_message_without_color(): formatted_message = formatter_message("$BOLDHello$RESET", use_color=False) assert formatted_message == "Hello" + def test_coloured_logger_creation(caplog): caplog.set_level(logging.INFO) logger = ColouredLogger("test_logger") # Ensure the logger has a stream handler - assert any(isinstance(handler, logging.StreamHandler) for handler in logger.handlers) + assert any( + isinstance(handler, logging.StreamHandler) for handler in logger.handlers + ) # Ensure the formatter is a ColouredFormatter instance formatter = logger.handlers[0].formatter assert isinstance(formatter, ColouredFormatter) + def test_coloured_formatter_format(): - record = logging.LogRecord('test_logger', logging.INFO, '/path/to/source.py', 42, 'Test message', (), None, 'format') + record = logging.LogRecord( + "test_logger", + logging.INFO, + "/path/to/source.py", + 42, + "Test message", + (), + None, + "format", + ) formatter = ColouredFormatter(ColouredLogger.FORMAT, use_color=True) # Ensure the log message is formatted with colours formatted_message = formatter.format(record) - - expected_message = ( - "\033[1m[test_logger ]\033[0m[\033[1;32mINFO \033[0m] Test message (\033[1m/path/to/source.py\033[0m:42)" - ) + + expected_message = "\033[1m[test_logger ]\033[0m[\033[1;32mINFO \033[0m] Test message (\033[1m/path/to/source.py\033[0m:42)" assert formatted_message[55:67] == expected_message[66:78] - assert formatted_message.split("[")[3] == expected_message.split("[")[5].replace(" ", "") + assert formatted_message.split("[")[3] == expected_message.split("[")[5].replace( + " ", "" + )