mirror of
https://github.com/ppy/osu.git
synced 2025-02-05 04:52:53 +08:00
Add failing test coverage for save after safeties addition
This commit is contained in:
parent
4f1aac9345
commit
afc48d86df
@ -109,6 +109,7 @@ namespace osu.Game.Tests.Visual.Editing
|
|||||||
&& set != null
|
&& set != null
|
||||||
&& set.PerformRead(s => s.Beatmaps.Single().ID == beatmap.ID);
|
&& set.PerformRead(s => s.Beatmaps.Single().ID == beatmap.ID);
|
||||||
});
|
});
|
||||||
|
AddAssert("can save again", () => Editor.Save());
|
||||||
|
|
||||||
AddStep("create new difficulty", () => Editor.CreateNewDifficulty(new OsuRuleset().RulesetInfo));
|
AddStep("create new difficulty", () => Editor.CreateNewDifficulty(new OsuRuleset().RulesetInfo));
|
||||||
AddUntilStep("wait for created", () =>
|
AddUntilStep("wait for created", () =>
|
||||||
|
@ -378,12 +378,16 @@ namespace osu.Game.Screens.Edit
|
|||||||
Clipboard.Content.Value = state.ClipboardContent;
|
Clipboard.Content.Value = state.ClipboardContent;
|
||||||
});
|
});
|
||||||
|
|
||||||
protected void Save()
|
/// <summary>
|
||||||
|
/// Saves the currently edited beatmap.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>Whether the save was successful.</returns>
|
||||||
|
protected bool Save()
|
||||||
{
|
{
|
||||||
if (!canSave)
|
if (!canSave)
|
||||||
{
|
{
|
||||||
notifications?.Post(new SimpleErrorNotification { Text = "Saving is not supported for this ruleset yet, sorry!" });
|
notifications?.Post(new SimpleErrorNotification { Text = "Saving is not supported for this ruleset yet, sorry!" });
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
@ -395,12 +399,13 @@ namespace osu.Game.Screens.Edit
|
|||||||
{
|
{
|
||||||
// can fail e.g. due to duplicated difficulty names.
|
// can fail e.g. due to duplicated difficulty names.
|
||||||
Logger.Error(ex, ex.Message);
|
Logger.Error(ex, ex.Message);
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// no longer new after first user-triggered save.
|
// no longer new after first user-triggered save.
|
||||||
isNewBeatmap = false;
|
isNewBeatmap = false;
|
||||||
updateLastSavedHash();
|
updateLastSavedHash();
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void Update()
|
protected override void Update()
|
||||||
@ -809,7 +814,7 @@ namespace osu.Game.Screens.Edit
|
|||||||
{
|
{
|
||||||
var fileMenuItems = new List<MenuItem>
|
var fileMenuItems = new List<MenuItem>
|
||||||
{
|
{
|
||||||
new EditorMenuItem("Save", MenuItemType.Standard, Save)
|
new EditorMenuItem("Save", MenuItemType.Standard, () => Save())
|
||||||
};
|
};
|
||||||
|
|
||||||
if (RuntimeInfo.IsDesktop)
|
if (RuntimeInfo.IsDesktop)
|
||||||
|
@ -97,7 +97,7 @@ namespace osu.Game.Tests.Visual
|
|||||||
|
|
||||||
public new void Redo() => base.Redo();
|
public new void Redo() => base.Redo();
|
||||||
|
|
||||||
public new void Save() => base.Save();
|
public new bool Save() => base.Save();
|
||||||
|
|
||||||
public new void Cut() => base.Cut();
|
public new void Cut() => base.Cut();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user