Coverage for tests/simulator/test_data_loading.py: 100%

35 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-09 04:47 +0000

1""" 

2Test data loading. 

3""" 

4 

5import sys 

6import os 

7from pathlib import Path 

8import pytest 

9 

10# Add current path 

11sys.path.append(os.getcwd()) 

12 

13from tests.test_utils import temp_sys_path 

14 

15with temp_sys_path("simulator", "streamwise"): 

16 from sim_types import QualityLevel 

17 

18 from data_loading import load_latency_data 

19 from data_loading import load_power_data 

20 from data_loading import load_adaptive_quality_data 

21 

22 

23def test_latency() -> None: 

24 latency_data = load_latency_data("simulator/data/") 

25 assert latency_data is not None 

26 

27 with pytest.raises(FileNotFoundError): 

28 load_latency_data("nonexisting") 

29 

30 

31def test_power() -> None: 

32 power_data = load_power_data("simulator/data/") 

33 assert power_data is not None 

34 

35 with pytest.raises(FileNotFoundError): 

36 load_power_data("nonexisting") 

37 

38 

39def test_adaptive_quality() -> None: 

40 latency_quality_data = load_adaptive_quality_data( 

41 "simulator/data/", 

42 QualityLevel.LOW, 

43 ) 

44 assert latency_quality_data is not None 

45 

46 latency_quality_data = load_adaptive_quality_data( 

47 "simulator/data/", 

48 QualityLevel.MEDIUM, 

49 ) 

50 assert latency_quality_data is not None 

51 

52 latency_quality_data = load_adaptive_quality_data( 

53 "simulator/data/", 

54 QualityLevel.HIGH, # ORIGINAL 

55 ) 

56 assert latency_quality_data is not None 

57 

58 with pytest.raises(AssertionError): 

59 load_adaptive_quality_data( 

60 "simulator/data/", 

61 "nonexisting" 

62 ) 

63 

64 

65def test_default_data_dir_is_cwd_relative(monkeypatch: pytest.MonkeyPatch) -> None: 

66 repo_root = Path(__file__).resolve().parents[2] 

67 monkeypatch.chdir(repo_root / "simulator") 

68 

69 assert load_latency_data() is not None 

70 assert load_power_data() is not None