From 0c3a173819934f7d9776dede414f719420ae81c5 Mon Sep 17 00:00:00 2001 From: sHa Date: Sun, 4 Jan 2026 15:13:48 +0000 Subject: [PATCH] refactor: Remove FormatterApplier class and update related imports and tests --- dist/renamer-0.7.9-py3-none-any.whl | Bin 0 -> 118973 bytes pyproject.toml | 2 +- renamer/formatters/__init__.py | 2 - renamer/formatters/formatter.py | 184 ------------------- renamer/formatters/special_info_formatter.py | 4 +- renamer/test/test_formatters.py | 119 +----------- uv.lock | 2 +- 7 files changed, 12 insertions(+), 301 deletions(-) create mode 100644 dist/renamer-0.7.9-py3-none-any.whl delete mode 100644 renamer/formatters/formatter.py diff --git a/dist/renamer-0.7.9-py3-none-any.whl b/dist/renamer-0.7.9-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..d9d7359891941fe9071d9c79ebeaff3af2d55dd4 GIT binary patch literal 118973 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

=bHLTavfx#OUYO2m@|zi6%&P}&QB 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 z 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 D>qmKW literal 0 HcmV?d00001 diff --git a/pyproject.toml b/pyproject.toml index 7d4e6ed..90af8ba 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "renamer" -version = "0.7.8" +version = "0.7.9" description = "Terminal-based media file renamer and metadata viewer" readme = "README.md" requires-python = ">=3.11" diff --git a/renamer/formatters/__init__.py b/renamer/formatters/__init__.py index 9400201..e2981e7 100644 --- a/renamer/formatters/__init__.py +++ b/renamer/formatters/__init__.py @@ -21,7 +21,6 @@ from .extension_formatter import ExtensionFormatter from .resolution_formatter import ResolutionFormatter from .track_formatter import TrackFormatter from .special_info_formatter import SpecialInfoFormatter -from .formatter import FormatterApplier # Decorator instances from .date_decorators import date_decorators, DateDecorators @@ -51,7 +50,6 @@ __all__ = [ 'ResolutionFormatter', 'TrackFormatter', 'SpecialInfoFormatter', - 'FormatterApplier', # Decorator instances and classes 'date_decorators', diff --git a/renamer/formatters/formatter.py b/renamer/formatters/formatter.py deleted file mode 100644 index 35a1b91..0000000 --- a/renamer/formatters/formatter.py +++ /dev/null @@ -1,184 +0,0 @@ -"""Formatter coordinator and application system. - -This module provides the FormatterApplier class which coordinates the application -of multiple formatters in the correct order (data → text → markup). It ensures -formatters are applied sequentially based on their type. -""" - -from .text_formatter import TextFormatter -from .duration_formatter import DurationFormatter -from .size_formatter import SizeFormatter -from .date_formatter import DateFormatter -from .extension_formatter import ExtensionFormatter -from .resolution_formatter import ResolutionFormatter -from .track_formatter import TrackFormatter -from .special_info_formatter import SpecialInfoFormatter -import logging -import inspect -import os - - -# Set up logging conditionally -if os.getenv('FORMATTER_LOG', '0') == '1': - logging.basicConfig(filename='formatter.log', level=logging.INFO, - format='%(asctime)s - %(levelname)s - %(message)s') -else: - logging.basicConfig(level=logging.CRITICAL) # Disable logging - - -class FormatterApplier: - """Coordinator for applying multiple formatters in the correct order. - - This class manages the application of formatters to data values, ensuring they - are applied in the proper sequence: - 1. Data formatters (transform raw data: size, duration, etc.) - 2. Text formatters (transform text: uppercase, lowercase, etc.) - 3. Markup formatters (add visual styling: bold, colors, etc.) - - The ordering prevents conflicts and ensures consistent output formatting. - - Example: - >>> from renamer.formatters.formatter import FormatterApplier - >>> from renamer.formatters.size_formatter import SizeFormatter - >>> from renamer.formatters.text_formatter import TextFormatter - >>> value = 1073741824 - >>> formatters = [SizeFormatter.format_size, TextFormatter.bold] - >>> result = FormatterApplier.apply_formatters(value, formatters) - >>> # Result: bold("1.00 GB") - """ - - # Define the global order of all formatters - FORMATTER_ORDER = [ - # Data formatters first (transform raw data) - DurationFormatter.format_seconds, - DurationFormatter.format_hhmmss, - DurationFormatter.format_hhmm, - DurationFormatter.format_full, - SizeFormatter.format_size, - SizeFormatter.format_size_full, - DateFormatter.format_modification_date, - DateFormatter.format_year, - ExtensionFormatter.format_extension_info, - ResolutionFormatter.format_resolution_dimensions, - TrackFormatter.format_video_track, - TrackFormatter.format_audio_track, - TrackFormatter.format_subtitle_track, - SpecialInfoFormatter.format_special_info, - SpecialInfoFormatter.format_database_info, - - # Text formatters second (transform text content) - TextFormatter.uppercase, - TextFormatter.lowercase, - TextFormatter.camelcase, - - # Markup formatters last (add visual styling) - TextFormatter.bold, - TextFormatter.italic, - TextFormatter.underline, - TextFormatter.bold_green, - TextFormatter.bold_cyan, - TextFormatter.bold_magenta, - TextFormatter.bold_yellow, - TextFormatter.green, - TextFormatter.yellow, - TextFormatter.magenta, - TextFormatter.cyan, - TextFormatter.red, - TextFormatter.blue, - TextFormatter.grey, - TextFormatter.dim, - TextFormatter.format_url, - ] - - @staticmethod - def apply_formatters(value, formatters): - """Apply multiple formatters to a value in the correct global order. - - Formatters are automatically sorted based on FORMATTER_ORDER to ensure - proper sequencing (data → text → markup). If a formatter fails, the - value is set to "Unknown" and processing continues. - - Args: - value: The value to format (can be any type) - formatters: Single formatter or list of formatter functions - - Returns: - The formatted value after all formatters have been applied - - Example: - >>> formatters = [SizeFormatter.format_size, TextFormatter.bold] - >>> result = FormatterApplier.apply_formatters(1024, formatters) - """ - if not isinstance(formatters, list): - formatters = [formatters] if formatters else [] - - # Sort formatters according to the global order - ordered_formatters = sorted(formatters, key=lambda f: FormatterApplier.FORMATTER_ORDER.index(f) if f in FormatterApplier.FORMATTER_ORDER else len(FormatterApplier.FORMATTER_ORDER)) - - # Apply in the ordered sequence - for formatter in ordered_formatters: - try: - old_value = value - value = formatter(value) - logging.debug(f"Applied {formatter.__name__ if hasattr(formatter, '__name__') else str(formatter)}: {repr(old_value)} -> {repr(value)}") - except Exception as e: - logging.error(f"Error applying {formatter.__name__ if hasattr(formatter, '__name__') else str(formatter)}: {e}") - value = "Unknown" - - return value - - @staticmethod - def format_data_item(item: dict) -> str | None: - """Apply all formatting to a data item and return the formatted string. - - Processes a data item dictionary containing value, label, and formatters, - applying them in the correct order to produce a formatted display string. - - Args: - item: Dictionary containing: - - value: The raw value to format - - label: Label text for the item - - value_formatters: List of formatters to apply to the value - - label_formatters: List of formatters to apply to the label - - display_formatters: List of formatters for the final display - - Returns: - Formatted string combining label and value, or None if value is None - - Example: - >>> item = { - ... "value": 1024, - ... "label": "Size", - ... "value_formatters": [SizeFormatter.format_size], - ... "label_formatters": [TextFormatter.bold] - ... } - >>> result = FormatterApplier.format_data_item(item) - """ - # Handle value formatting first (e.g., size formatting) - value = item.get("value") - if value is not None and value != "Not extracted": - value_formatters = item.get("value_formatters", []) - value = FormatterApplier.apply_formatters(value, value_formatters) - - # Handle label formatting - label = item.get("label", "") - if label: - label_formatters = item.get("label_formatters", []) - label = FormatterApplier.apply_formatters(label, label_formatters) - - # Create the display string - if value is not None: - display_string = f"{label}: {value}" - else: - display_string = label - - # Handle display formatting (e.g., color) - display_formatters = item.get("display_formatters", []) - display_string = FormatterApplier.apply_formatters(display_string, display_formatters) - - return display_string - - @staticmethod - def format_data_items(data: list[dict]) -> list: - """Apply formatting to a list of data items""" - return [FormatterApplier.format_data_item(item) for item in data] \ No newline at end of file diff --git a/renamer/formatters/special_info_formatter.py b/renamer/formatters/special_info_formatter.py index ee2cc68..b1f2d4b 100644 --- a/renamer/formatters/special_info_formatter.py +++ b/renamer/formatters/special_info_formatter.py @@ -31,5 +31,5 @@ class SpecialInfoFormatter: logging.info(f"Formatted tuple/list to: {result!r}") return result if os.getenv("FORMATTER_LOG"): - logging.info("Returning 'Unknown'") - return "Unknown" \ No newline at end of file + logging.info("Returning None") + return None \ No newline at end of file diff --git a/renamer/test/test_formatters.py b/renamer/test/test_formatters.py index f6be93a..816bbcc 100644 --- a/renamer/test/test_formatters.py +++ b/renamer/test/test_formatters.py @@ -16,8 +16,7 @@ from renamer.formatters import ( ExtensionFormatter, ResolutionFormatter, TrackFormatter, - SpecialInfoFormatter, - FormatterApplier + SpecialInfoFormatter ) @@ -270,124 +269,22 @@ class TestSpecialInfoFormatter: def test_format_database_info_dict(self): """Test formatting database info from dict.""" - info = {'type': 'tmdb', 'id': '12345'} + info = {'name': 'tmdb', 'id': '12345'} result = SpecialInfoFormatter.format_database_info(info) - # Just check it returns a string - assert isinstance(result, str) + # Should format as "tmdbid-12345" + assert result == "tmdbid-12345" def test_format_database_info_list(self): """Test formatting database info from list.""" info = ['tmdb', '12345'] result = SpecialInfoFormatter.format_database_info(info) - # Just check it returns a string - assert isinstance(result, str) + # Should format as "tmdbid-12345" + assert result == "tmdbid-12345" def test_format_database_info_none(self): """Test formatting None database info.""" result = SpecialInfoFormatter.format_database_info(None) - # Should return empty or some string - assert isinstance(result, str) + # Should return None when no valid database info + assert result is None -class TestFormatterApplier: - """Test FormatterApplier functionality.""" - - def test_apply_formatters_single(self): - """Test applying single formatter.""" - result = FormatterApplier.apply_formatters("test", TextFormatter.uppercase) - assert result == "TEST" - - def test_apply_formatters_list(self): - """Test applying multiple formatters.""" - formatters = [TextFormatter.uppercase, TextFormatter.bold] - result = FormatterApplier.apply_formatters("test", formatters) - assert "TEST" in result - assert "[bold]" in result - - def test_apply_formatters_ordered(self): - """Test that formatters are applied in correct order.""" - # Text formatters before markup formatters - formatters = [TextFormatter.bold, TextFormatter.uppercase] - result = FormatterApplier.apply_formatters("test", formatters) - # uppercase should be applied first, then bold - assert "[bold]TEST[/bold]" in result - - def test_format_data_item_with_value(self): - """Test formatting data item with value.""" - item = { - "label": "Size", - "value": 1024, - "value_formatters": [SizeFormatter.format_size] - } - result = FormatterApplier.format_data_item(item) - assert "Size:" in result - assert "KB" in result - - def test_format_data_item_with_label_formatters(self): - """Test formatting data item with label formatters.""" - item = { - "label": "title", - "value": "Movie", - "label_formatters": [TextFormatter.uppercase] - } - result = FormatterApplier.format_data_item(item) - assert "TITLE:" in result - - def test_format_data_item_with_display_formatters(self): - """Test formatting data item with display formatters.""" - item = { - "label": "Error", - "value": "Failed", - "display_formatters": [TextFormatter.red] - } - result = FormatterApplier.format_data_item(item) - assert "[red]" in result - - def test_format_data_items_list(self): - """Test formatting list of data items.""" - items = [ - {"label": "Title", "value": "Movie"}, - {"label": "Year", "value": "2024"} - ] - results = FormatterApplier.format_data_items(items) - assert len(results) == 2 - assert "Title: Movie" in results[0] - assert "Year: 2024" in results[1] - - -class TestFormatterIntegration: - """Integration tests for formatters working together.""" - - def test_complete_formatting_pipeline(self): - """Test complete formatting pipeline with multiple formatters.""" - # Create a data item with all formatter types - item = { - "label": "file size", - "value": 1024 * 1024 * 100, # 100 MB - "label_formatters": [TextFormatter.uppercase], - "value_formatters": [SizeFormatter.format_size], - "display_formatters": [TextFormatter.green] - } - - result = FormatterApplier.format_data_item(item) - - # Check all formatters were applied - assert "FILE SIZE:" in result # Label uppercase - assert "MB" in result # Size formatted - assert "[green]" in result # Display color - - def test_error_handling_in_formatter(self): - """Test error handling when formatter fails.""" - # Create a formatter that will fail - def bad_formatter(value): - raise ValueError("Test error") - - item = { - "label": "Test", - "value": "data", - "value_formatters": [bad_formatter] - } - - # Should return "Unknown" instead of crashing - result = FormatterApplier.format_data_item(item) - assert "Unknown" in result diff --git a/uv.lock b/uv.lock index 46c3ab7..705d598 100644 --- a/uv.lock +++ b/uv.lock @@ -462,7 +462,7 @@ wheels = [ [[package]] name = "renamer" -version = "0.7.8" +version = "0.7.9" source = { editable = "." } dependencies = [ { name = "langcodes" },