from netatmo_service.data import Sample from netatmo_service.rrd import RRDStore def test_rrd_files_have_netatmo_prefix(tmp_path): store = RRDStore(tmp_path) assert store.path("outdoor") == tmp_path / "netatmo_outdoor.rrd" assert store.path("wind") == tmp_path / "netatmo_wind.rrd" def test_rrd_is_updated_only_once_per_collection_interval(tmp_path): store = RRDStore(tmp_path) store.ensure_all() now = int(__import__("time").time()) timestamp = ((now // 600) - 1) * 600 + 100 first = Sample(timestamp, {"temperature": 20, "co2": 500, "humidity": 50}) same_interval = Sample(timestamp + 1, {"temperature": 21, "co2": 510, "humidity": 51}) assert store.update("study", first) is True assert store.update("study", first) is False assert store.update("study", same_interval) is False