@@ -384,6 +384,67 @@ def test_full_next_break(self, monkeypatch: pytest.MonkeyPatch) -> None:
384384 assert bq .next ().name == "translated!: break 4"
385385 assert bq .next ().name == "translated!: long break 1"
386386
387+ def test_skip_long_break (self , monkeypatch : pytest .MonkeyPatch ) -> None :
388+ bq = self .get_bq_full (monkeypatch )
389+
390+ next = bq .get_break ()
391+ assert next .name == "translated!: break 1"
392+ assert not bq .is_long_break ()
393+
394+ assert bq .next ().name == "translated!: break 2"
395+ assert bq .next ().name == "translated!: break 3"
396+ assert bq .next ().name == "translated!: break 4"
397+ assert bq .next ().name == "translated!: long break 1"
398+ assert bq .is_long_break ()
399+ assert bq .next ().name == "translated!: break 1"
400+ assert not bq .is_long_break ()
401+ assert bq .next ().name == "translated!: break 2"
402+
403+ bq .skip_long_break ()
404+
405+ assert bq .next ().name == "translated!: break 3"
406+ assert bq .next ().name == "translated!: break 4"
407+ assert bq .next ().name == "translated!: break 1"
408+ assert bq .next ().name == "translated!: long break 2"
409+ assert bq .next ().name == "translated!: break 2"
410+ assert bq .next ().name == "translated!: break 3"
411+ assert bq .next ().name == "translated!: break 4"
412+ assert bq .next ().name == "translated!: break 1"
413+ assert bq .next ().name == "translated!: long break 3"
414+
415+ def test_skip_long_break_before_long_break (
416+ self , monkeypatch : pytest .MonkeyPatch
417+ ) -> None :
418+ bq = self .get_bq_full (monkeypatch )
419+
420+ next = bq .get_break ()
421+ assert next .name == "translated!: break 1"
422+ assert not bq .is_long_break ()
423+
424+ assert bq .next ().name == "translated!: break 2"
425+ assert bq .next ().name == "translated!: break 3"
426+ assert bq .next ().name == "translated!: break 4"
427+ assert bq .next ().name == "translated!: long break 1"
428+ assert bq .is_long_break ()
429+ assert bq .next ().name == "translated!: break 1"
430+ assert not bq .is_long_break ()
431+ assert bq .next ().name == "translated!: break 2"
432+ assert bq .next ().name == "translated!: break 3"
433+ assert bq .next ().name == "translated!: break 4"
434+ assert bq .next ().name == "translated!: long break 2"
435+
436+ assert bq .get_break ().name == "translated!: long break 2"
437+
438+ bq .skip_long_break ()
439+
440+ assert bq .get_break ().name == "translated!: long break 2"
441+
442+ assert bq .next ().name == "translated!: break 1"
443+ assert bq .next ().name == "translated!: break 2"
444+ assert bq .next ().name == "translated!: break 3"
445+ assert bq .next ().name == "translated!: break 4"
446+ assert bq .next ().name == "translated!: long break 3"
447+
387448 def test_full_next_break_random (self , monkeypatch : pytest .MonkeyPatch ) -> None :
388449 random_seed = 5
389450 bq = self .get_bq_full (monkeypatch , random_seed )
0 commit comments