@@ -961,6 +961,41 @@ def test___waveform_with_precision_timing___get_timing___converts_timing() -> No
961961 )
962962
963963
964+ def test___waveform_with_cached_timing___get_timing___returns_cached_timing () -> None :
965+ waveform = AnalogWaveform ()
966+ waveform .timing = Timing .create_with_regular_interval (
967+ dt .timedelta (milliseconds = 1 ), dt .datetime (2025 , 1 , 1 ), dt .timedelta (seconds = 1 )
968+ )
969+ precision_timing_before = waveform .precision_timing
970+
971+ precision_timing = waveform .precision_timing
972+
973+ assert precision_timing is precision_timing_before
974+ assert precision_timing == PrecisionTiming .create_with_regular_interval (
975+ ht .timedelta (milliseconds = 1 ), ht .datetime (2025 , 1 , 1 ), ht .timedelta (seconds = 1 )
976+ )
977+
978+
979+ def test___waveform_with_cached_timing___set_timing___clears_cached_timing () -> None :
980+ waveform = AnalogWaveform ()
981+ waveform .timing = Timing .create_with_regular_interval (
982+ dt .timedelta (milliseconds = 1 ), dt .datetime (2025 , 1 , 1 ), dt .timedelta (seconds = 1 )
983+ )
984+ precision_timing_before = waveform .precision_timing
985+
986+ waveform .timing = Timing .create_with_regular_interval (
987+ dt .timedelta (milliseconds = 2 ), dt .datetime (2025 , 1 , 2 ), dt .timedelta (seconds = 2 )
988+ )
989+
990+ precision_timing_after = waveform .precision_timing
991+ assert precision_timing_before == PrecisionTiming .create_with_regular_interval (
992+ ht .timedelta (milliseconds = 1 ), ht .datetime (2025 , 1 , 1 ), ht .timedelta (seconds = 1 )
993+ )
994+ assert precision_timing_after == PrecisionTiming .create_with_regular_interval (
995+ ht .timedelta (milliseconds = 2 ), ht .datetime (2025 , 1 , 2 ), ht .timedelta (seconds = 2 )
996+ )
997+
998+
964999###############################################################################
9651000# scale_mode
9661001###############################################################################
0 commit comments