// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. using NUnit.Framework; using osu.Game.Rulesets.Osu.Mods; using osuTK.Input; namespace osu.Game.Rulesets.Osu.Tests.Mods { public partial class TestSceneOsuModAutopilot : OsuModTestScene { [Test] public void TestInstantResume() { CreateModTest(new ModTestData { Mod = new OsuModAutopilot(), PassCondition = () => true, Autoplay = false, }); AddUntilStep("wait for gameplay start", () => Player.LocalUserPlaying.Value); AddStep("press pause", () => InputManager.PressKey(Key.Escape)); AddUntilStep("wait until paused", () => Player.GameplayClockContainer.IsPaused.Value); AddStep("release pause", () => InputManager.ReleaseKey(Key.Escape)); AddStep("press resume", () => InputManager.PressKey(Key.Escape)); AddUntilStep("wait for resume", () => !Player.IsResuming); AddAssert("resumed", () => !Player.GameplayClockContainer.IsPaused.Value); } } }