hass.tibber_prices/tests
Julian Pawlowski 6e0310ef7c fix(services): correct period data format for ApexCharts visualization
Period data in array_of_arrays format now generates proper segment structure
for stepline charts. Each period produces 2-3 data points depending on
insert_nulls parameter:

1. Start time with price (begin period)
2. End time with price (hold price level)
3. End time with NULL (terminate segment, only if insert_nulls='segments'/'all')

This enables ApexCharts to correctly display periods as continuous blocks with
clean gaps between them. Previously only start point was generated, causing
periods to render as single points instead of continuous segments.

Changes:
- formatters.py: Updated get_period_data() to generate 2-3 points per period
- formatters.py: Added insert_nulls parameter to control NULL termination
- get_chartdata.py: Pass insert_nulls parameter to get_period_data()
- get_apexcharts_yaml.py: Set insert_nulls='segments' for period overlay
- get_apexcharts_yaml.py: Preserve NULL values in data_generator mapping
- get_apexcharts_yaml.py: Store original price for potential tooltip access
- tests: Added comprehensive period data format tests

Impact: Best price and peak price period overlays now display correctly as
continuous blocks with proper segment separation in ApexCharts cards.
2025-12-03 14:20:46 +00:00
..
services fix(services): correct period data format for ApexCharts visualization 2025-12-03 14:20:46 +00:00
__init__.py test: add pytest framework and midnight-crossing tests 2025-11-21 23:47:01 +00:00
test_avg_none_fallback.py fix(calculations): handle negative electricity prices correctly 2025-11-22 04:45:23 +00:00
test_best_price_e2e.py refactor: migrate from multi-home to single-home-per-coordinator architecture 2025-11-24 16:24:37 +00:00
test_cache_age.py fix(coordinator): use coordinator update timestamp for cache validity 2025-11-22 04:44:22 +00:00
test_cache_validity.py fix(coordinator): use coordinator update timestamp for cache validity 2025-11-22 04:44:22 +00:00
test_cache_validity_after_midnight.py fix(coordinator): use coordinator update timestamp for cache validity 2025-11-22 04:44:22 +00:00
test_config_validators.py refactor(config): use negative values for Best Price min_distance 2025-11-22 04:44:57 +00:00
test_coordinator_shutdown.py test(cleanup): add comprehensive resource cleanup tests 2025-11-22 04:46:11 +00:00
test_interval_pool_memory_leak.py refactor(scripts): reorganize and standardize development scripts 2025-11-26 13:11:52 +00:00
test_interval_pool_optimization.py refactor(scripts): reorganize and standardize development scripts 2025-11-26 13:11:52 +00:00
test_level_filtering.py fix(period_handlers): normalize flex and min_distance to absolute values 2025-11-22 13:01:01 +00:00
test_lifecycle_state.py fix(sensors): ensure connection/tomorrow_data/lifecycle consistency 2025-11-22 04:45:57 +00:00
test_midnight_handler.py feat(coordinator): add atomic midnight turnover coordination 2025-11-22 04:45:41 +00:00
test_midnight_periods.py test: add pytest framework and midnight-crossing tests 2025-11-21 23:47:01 +00:00
test_midnight_turnover.py refactor(config): use negative values for Best Price min_distance 2025-11-22 04:44:57 +00:00
test_minmax_none_fallback.py fix(calculations): handle negative electricity prices correctly 2025-11-22 04:45:23 +00:00
test_next_api_poll.py test(timers): comprehensive timer architecture validation 2025-11-22 04:46:30 +00:00
test_peak_price_e2e.py refactor: migrate from multi-home to single-home-per-coordinator architecture 2025-11-24 16:24:37 +00:00
test_percentage_calculations.py fix(calculations): handle negative electricity prices correctly 2025-11-22 04:45:23 +00:00
test_period_calculation.py test(period): document period calculation testing strategy 2025-11-22 04:47:09 +00:00
test_price_calculations.py refactor: migrate from multi-home to single-home-per-coordinator architecture 2025-11-24 16:24:37 +00:00
test_rating_threshold_validation.py fix(calculations): handle negative electricity prices correctly 2025-11-22 04:45:23 +00:00
test_resource_cleanup.py test: fix async mocking and add noqa comments for private access 2025-11-25 20:44:39 +00:00
test_sensor_consistency.py refactor: migrate from multi-home to single-home-per-coordinator architecture 2025-11-24 16:24:37 +00:00
test_sensor_timer_assignment.py test(timers): comprehensive timer architecture validation 2025-11-22 04:46:30 +00:00
test_time_service.py test(time): add boundary tolerance and DST handling tests 2025-11-22 04:46:53 +00:00
test_timer_scheduling.py test(timers): comprehensive timer architecture validation 2025-11-22 04:46:30 +00:00
test_tomorrow_data_refresh.py refactor: migrate from multi-home to single-home-per-coordinator architecture 2025-11-24 16:24:37 +00:00