diff --git a/osu.Desktop/osu.Desktop.csproj b/osu.Desktop/osu.Desktop.csproj
index fb1ca7eb10..ab64fa7ede 100644
--- a/osu.Desktop/osu.Desktop.csproj
+++ b/osu.Desktop/osu.Desktop.csproj
@@ -233,6 +233,10 @@
{f167e17a-7de6-4af5-b920-a5112296c695}
osu.Game.Rulesets.Taiko
+
+ {54377672-20b1-40af-8087-5cf73bf3953a}
+ osu.Game.Tests
+
{2a66dd92-adb1-4994-89e2-c94e04acda0d}
osu.Game
diff --git a/osu.Game.Tests/Visual/TestCaseAllPlayers.cs b/osu.Game.Tests/Visual/TestCaseAllPlayers.cs
new file mode 100644
index 0000000000..8c63e1a274
--- /dev/null
+++ b/osu.Game.Tests/Visual/TestCaseAllPlayers.cs
@@ -0,0 +1,10 @@
+// Copyright (c) 2007-2017 ppy Pty Ltd .
+// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
+
+namespace osu.Game.Tests.Visual
+{
+ public class TestCaseAllPlayers : TestCasePlayer
+ {
+ public override string Description => @"Showing everything to play the game.";
+ }
+}
diff --git a/osu.Game/Tests/Visual/TestCaseBeatSyncedContainer.cs b/osu.Game.Tests/Visual/TestCaseBeatSyncedContainer.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseBeatSyncedContainer.cs
rename to osu.Game.Tests/Visual/TestCaseBeatSyncedContainer.cs
diff --git a/osu.Game/Tests/Visual/TestCaseBeatmapDetailArea.cs b/osu.Game.Tests/Visual/TestCaseBeatmapDetailArea.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseBeatmapDetailArea.cs
rename to osu.Game.Tests/Visual/TestCaseBeatmapDetailArea.cs
diff --git a/osu.Game/Tests/Visual/TestCaseBeatmapDetails.cs b/osu.Game.Tests/Visual/TestCaseBeatmapDetails.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseBeatmapDetails.cs
rename to osu.Game.Tests/Visual/TestCaseBeatmapDetails.cs
diff --git a/osu.Game/Tests/Visual/TestCaseBeatmapOptionsOverlay.cs b/osu.Game.Tests/Visual/TestCaseBeatmapOptionsOverlay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseBeatmapOptionsOverlay.cs
rename to osu.Game.Tests/Visual/TestCaseBeatmapOptionsOverlay.cs
diff --git a/osu.Game/Tests/Visual/TestCaseBeatmapSetOverlay.cs b/osu.Game.Tests/Visual/TestCaseBeatmapSetOverlay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseBeatmapSetOverlay.cs
rename to osu.Game.Tests/Visual/TestCaseBeatmapSetOverlay.cs
diff --git a/osu.Game/Tests/Visual/TestCaseBreadcrumbs.cs b/osu.Game.Tests/Visual/TestCaseBreadcrumbs.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseBreadcrumbs.cs
rename to osu.Game.Tests/Visual/TestCaseBreadcrumbs.cs
diff --git a/osu.Game/Tests/Visual/TestCaseBreakOverlay.cs b/osu.Game.Tests/Visual/TestCaseBreakOverlay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseBreakOverlay.cs
rename to osu.Game.Tests/Visual/TestCaseBreakOverlay.cs
diff --git a/osu.Game/Tests/Visual/TestCaseChatDisplay.cs b/osu.Game.Tests/Visual/TestCaseChatDisplay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseChatDisplay.cs
rename to osu.Game.Tests/Visual/TestCaseChatDisplay.cs
diff --git a/osu.Game/Tests/Visual/TestCaseContextMenu.cs b/osu.Game.Tests/Visual/TestCaseContextMenu.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseContextMenu.cs
rename to osu.Game.Tests/Visual/TestCaseContextMenu.cs
diff --git a/osu.Game/Tests/Visual/TestCaseDialogOverlay.cs b/osu.Game.Tests/Visual/TestCaseDialogOverlay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseDialogOverlay.cs
rename to osu.Game.Tests/Visual/TestCaseDialogOverlay.cs
diff --git a/osu.Game/Tests/Visual/TestCaseDirect.cs b/osu.Game.Tests/Visual/TestCaseDirect.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseDirect.cs
rename to osu.Game.Tests/Visual/TestCaseDirect.cs
diff --git a/osu.Game/Tests/Visual/TestCaseDrawableRoom.cs b/osu.Game.Tests/Visual/TestCaseDrawableRoom.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseDrawableRoom.cs
rename to osu.Game.Tests/Visual/TestCaseDrawableRoom.cs
diff --git a/osu.Game/Tests/Visual/TestCaseDrawings.cs b/osu.Game.Tests/Visual/TestCaseDrawings.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseDrawings.cs
rename to osu.Game.Tests/Visual/TestCaseDrawings.cs
diff --git a/osu.Game/Tests/Visual/TestCaseEditor.cs b/osu.Game.Tests/Visual/TestCaseEditor.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseEditor.cs
rename to osu.Game.Tests/Visual/TestCaseEditor.cs
diff --git a/osu.Game/Tests/Visual/TestCaseEditorComposeTimeline.cs b/osu.Game.Tests/Visual/TestCaseEditorComposeTimeline.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseEditorComposeTimeline.cs
rename to osu.Game.Tests/Visual/TestCaseEditorComposeTimeline.cs
diff --git a/osu.Game/Tests/Visual/TestCaseEditorMenuBar.cs b/osu.Game.Tests/Visual/TestCaseEditorMenuBar.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseEditorMenuBar.cs
rename to osu.Game.Tests/Visual/TestCaseEditorMenuBar.cs
diff --git a/osu.Game/Tests/Visual/TestCaseEditorSummaryTimeline.cs b/osu.Game.Tests/Visual/TestCaseEditorSummaryTimeline.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseEditorSummaryTimeline.cs
rename to osu.Game.Tests/Visual/TestCaseEditorSummaryTimeline.cs
diff --git a/osu.Game/Tests/Visual/TestCaseGamefield.cs b/osu.Game.Tests/Visual/TestCaseGamefield.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseGamefield.cs
rename to osu.Game.Tests/Visual/TestCaseGamefield.cs
diff --git a/osu.Game/Tests/Visual/TestCaseGraph.cs b/osu.Game.Tests/Visual/TestCaseGraph.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseGraph.cs
rename to osu.Game.Tests/Visual/TestCaseGraph.cs
diff --git a/osu.Game/Tests/Visual/TestCaseIconButton.cs b/osu.Game.Tests/Visual/TestCaseIconButton.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseIconButton.cs
rename to osu.Game.Tests/Visual/TestCaseIconButton.cs
diff --git a/osu.Game/Tests/Visual/TestCaseKeyConfiguration.cs b/osu.Game.Tests/Visual/TestCaseKeyConfiguration.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseKeyConfiguration.cs
rename to osu.Game.Tests/Visual/TestCaseKeyConfiguration.cs
diff --git a/osu.Game/Tests/Visual/TestCaseKeyCounter.cs b/osu.Game.Tests/Visual/TestCaseKeyCounter.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseKeyCounter.cs
rename to osu.Game.Tests/Visual/TestCaseKeyCounter.cs
diff --git a/osu.Game/Tests/Visual/TestCaseLeaderboard.cs b/osu.Game.Tests/Visual/TestCaseLeaderboard.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseLeaderboard.cs
rename to osu.Game.Tests/Visual/TestCaseLeaderboard.cs
diff --git a/osu.Game/Tests/Visual/TestCaseMedalOverlay.cs b/osu.Game.Tests/Visual/TestCaseMedalOverlay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseMedalOverlay.cs
rename to osu.Game.Tests/Visual/TestCaseMedalOverlay.cs
diff --git a/osu.Game/Tests/Visual/TestCaseMenuButtonSystem.cs b/osu.Game.Tests/Visual/TestCaseMenuButtonSystem.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseMenuButtonSystem.cs
rename to osu.Game.Tests/Visual/TestCaseMenuButtonSystem.cs
diff --git a/osu.Game/Tests/Visual/TestCaseMenuOverlays.cs b/osu.Game.Tests/Visual/TestCaseMenuOverlays.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseMenuOverlays.cs
rename to osu.Game.Tests/Visual/TestCaseMenuOverlays.cs
diff --git a/osu.Game/Tests/Visual/TestCaseMods.cs b/osu.Game.Tests/Visual/TestCaseMods.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseMods.cs
rename to osu.Game.Tests/Visual/TestCaseMods.cs
diff --git a/osu.Game/Tests/Visual/TestCaseMusicController.cs b/osu.Game.Tests/Visual/TestCaseMusicController.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseMusicController.cs
rename to osu.Game.Tests/Visual/TestCaseMusicController.cs
diff --git a/osu.Game/Tests/Visual/TestCaseNotificationOverlay.cs b/osu.Game.Tests/Visual/TestCaseNotificationOverlay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseNotificationOverlay.cs
rename to osu.Game.Tests/Visual/TestCaseNotificationOverlay.cs
diff --git a/osu.Game/Tests/Visual/TestCaseOnScreenDisplay.cs b/osu.Game.Tests/Visual/TestCaseOnScreenDisplay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseOnScreenDisplay.cs
rename to osu.Game.Tests/Visual/TestCaseOnScreenDisplay.cs
diff --git a/osu.Game/Tests/Visual/TestCasePlaySongSelect.cs b/osu.Game.Tests/Visual/TestCasePlaySongSelect.cs
similarity index 93%
rename from osu.Game/Tests/Visual/TestCasePlaySongSelect.cs
rename to osu.Game.Tests/Visual/TestCasePlaySongSelect.cs
index 965308c32c..a722974c07 100644
--- a/osu.Game/Tests/Visual/TestCasePlaySongSelect.cs
+++ b/osu.Game.Tests/Visual/TestCasePlaySongSelect.cs
@@ -4,7 +4,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using Microsoft.EntityFrameworkCore;
using osu.Framework.Allocation;
using osu.Framework.MathUtils;
using osu.Game.Beatmaps;
@@ -38,8 +37,7 @@ namespace osu.Game.Tests.Visual
var storage = new TestStorage(@"TestCasePlaySongSelect");
// this is by no means clean. should be replacing inside of OsuGameBase somehow.
- var context = new OsuDbContext(storage.GetDatabaseConnectionString(@"client"));
- context.Database.Migrate();
+ var context = new OsuDbContext();
Func contextFactory = () => context;
diff --git a/osu.Game/Tests/Visual/TestCaseReplay.cs b/osu.Game.Tests/Visual/TestCaseReplay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseReplay.cs
rename to osu.Game.Tests/Visual/TestCaseReplay.cs
diff --git a/osu.Game/Tests/Visual/TestCaseReplaySettingsOverlay.cs b/osu.Game.Tests/Visual/TestCaseReplaySettingsOverlay.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseReplaySettingsOverlay.cs
rename to osu.Game.Tests/Visual/TestCaseReplaySettingsOverlay.cs
diff --git a/osu.Game/Tests/Visual/TestCaseResults.cs b/osu.Game.Tests/Visual/TestCaseResults.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseResults.cs
rename to osu.Game.Tests/Visual/TestCaseResults.cs
diff --git a/osu.Game/Tests/Visual/TestCaseRoomInspector.cs b/osu.Game.Tests/Visual/TestCaseRoomInspector.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseRoomInspector.cs
rename to osu.Game.Tests/Visual/TestCaseRoomInspector.cs
diff --git a/osu.Game/Tests/Visual/TestCaseScoreCounter.cs b/osu.Game.Tests/Visual/TestCaseScoreCounter.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseScoreCounter.cs
rename to osu.Game.Tests/Visual/TestCaseScoreCounter.cs
diff --git a/osu.Game/Tests/Visual/TestCaseScrollingPlayfield.cs b/osu.Game.Tests/Visual/TestCaseScrollingPlayfield.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseScrollingPlayfield.cs
rename to osu.Game.Tests/Visual/TestCaseScrollingPlayfield.cs
diff --git a/osu.Game/Tests/Visual/TestCaseSettings.cs b/osu.Game.Tests/Visual/TestCaseSettings.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseSettings.cs
rename to osu.Game.Tests/Visual/TestCaseSettings.cs
diff --git a/osu.Game/Tests/Visual/TestCaseSkipButton.cs b/osu.Game.Tests/Visual/TestCaseSkipButton.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseSkipButton.cs
rename to osu.Game.Tests/Visual/TestCaseSkipButton.cs
diff --git a/osu.Game/Tests/Visual/TestCaseSocial.cs b/osu.Game.Tests/Visual/TestCaseSocial.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseSocial.cs
rename to osu.Game.Tests/Visual/TestCaseSocial.cs
diff --git a/osu.Game/Tests/Visual/TestCaseSongProgress.cs b/osu.Game.Tests/Visual/TestCaseSongProgress.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseSongProgress.cs
rename to osu.Game.Tests/Visual/TestCaseSongProgress.cs
diff --git a/osu.Game/Tests/Visual/TestCaseStoryboard.cs b/osu.Game.Tests/Visual/TestCaseStoryboard.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseStoryboard.cs
rename to osu.Game.Tests/Visual/TestCaseStoryboard.cs
diff --git a/osu.Game/Tests/Visual/TestCaseTabControl.cs b/osu.Game.Tests/Visual/TestCaseTabControl.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseTabControl.cs
rename to osu.Game.Tests/Visual/TestCaseTabControl.cs
diff --git a/osu.Game/Tests/Visual/TestCaseTextAwesome.cs b/osu.Game.Tests/Visual/TestCaseTextAwesome.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseTextAwesome.cs
rename to osu.Game.Tests/Visual/TestCaseTextAwesome.cs
diff --git a/osu.Game/Tests/Visual/TestCaseTwoLayerButton.cs b/osu.Game.Tests/Visual/TestCaseTwoLayerButton.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseTwoLayerButton.cs
rename to osu.Game.Tests/Visual/TestCaseTwoLayerButton.cs
diff --git a/osu.Game/Tests/Visual/TestCaseUserPanel.cs b/osu.Game.Tests/Visual/TestCaseUserPanel.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseUserPanel.cs
rename to osu.Game.Tests/Visual/TestCaseUserPanel.cs
diff --git a/osu.Game/Tests/Visual/TestCaseUserProfile.cs b/osu.Game.Tests/Visual/TestCaseUserProfile.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseUserProfile.cs
rename to osu.Game.Tests/Visual/TestCaseUserProfile.cs
diff --git a/osu.Game/Tests/Visual/TestCaseUserRanks.cs b/osu.Game.Tests/Visual/TestCaseUserRanks.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseUserRanks.cs
rename to osu.Game.Tests/Visual/TestCaseUserRanks.cs
diff --git a/osu.Game/Tests/Visual/TestCaseWaveform.cs b/osu.Game.Tests/Visual/TestCaseWaveform.cs
similarity index 100%
rename from osu.Game/Tests/Visual/TestCaseWaveform.cs
rename to osu.Game.Tests/Visual/TestCaseWaveform.cs
diff --git a/osu.Game.Tests/osu.Game.Tests.csproj b/osu.Game.Tests/osu.Game.Tests.csproj
index 51c1b03373..92bae9d789 100644
--- a/osu.Game.Tests/osu.Game.Tests.csproj
+++ b/osu.Game.Tests/osu.Game.Tests.csproj
@@ -90,6 +90,56 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/osu.Game/Database/OsuDbContext.cs b/osu.Game/Database/OsuDbContext.cs
index c509093cf9..7824cf9712 100644
--- a/osu.Game/Database/OsuDbContext.cs
+++ b/osu.Game/Database/OsuDbContext.cs
@@ -40,6 +40,8 @@ namespace osu.Game.Database
: this("DataSource=:memory:")
{
// required for tooling (see https://wildermuth.com/2017/07/06/Program-cs-in-ASP-NET-Core-2-0).
+
+ Migrate();
}
///
diff --git a/osu.Game/Screens/Edit/Editor.cs b/osu.Game/Screens/Edit/Editor.cs
index b47a3263b7..c610a24e22 100644
--- a/osu.Game/Screens/Edit/Editor.cs
+++ b/osu.Game/Screens/Edit/Editor.cs
@@ -20,7 +20,7 @@ using osu.Game.Screens.Edit.Screens.Design;
namespace osu.Game.Screens.Edit
{
- internal class Editor : OsuScreen
+ public class Editor : OsuScreen
{
protected override BackgroundScreen CreateBackground() => new BackgroundScreenCustom(@"Backgrounds/bg4");
diff --git a/osu.Game/Screens/Edit/Screens/Compose/Timeline/ScrollingTimelineContainer.cs b/osu.Game/Screens/Edit/Screens/Compose/Timeline/ScrollingTimelineContainer.cs
index 47a77090b2..587853be59 100644
--- a/osu.Game/Screens/Edit/Screens/Compose/Timeline/ScrollingTimelineContainer.cs
+++ b/osu.Game/Screens/Edit/Screens/Compose/Timeline/ScrollingTimelineContainer.cs
@@ -12,7 +12,7 @@ using osu.Game.Graphics;
namespace osu.Game.Screens.Edit.Screens.Compose.Timeline
{
- internal class ScrollingTimelineContainer : ScrollContainer
+ public class ScrollingTimelineContainer : ScrollContainer
{
public readonly Bindable HitObjectsVisible = new Bindable();
public readonly Bindable HitSoundsVisible = new Bindable();
diff --git a/osu.Game/Tests/Visual/TestCasePlayer.cs b/osu.Game/Tests/Visual/TestCasePlayer.cs
index dfbdaf1d9d..5965be9717 100644
--- a/osu.Game/Tests/Visual/TestCasePlayer.cs
+++ b/osu.Game/Tests/Visual/TestCasePlayer.cs
@@ -17,7 +17,7 @@ using OpenTK.Graphics;
namespace osu.Game.Tests.Visual
{
- public class TestCasePlayer : OsuTestCase
+ public abstract class TestCasePlayer : OsuTestCase
{
private readonly Type ruleset;
@@ -34,7 +34,7 @@ namespace osu.Game.Tests.Visual
this.ruleset = ruleset;
}
- public TestCasePlayer()
+ protected TestCasePlayer()
{
}
diff --git a/osu.Game/osu.Game.csproj b/osu.Game/osu.Game.csproj
index f02664c3d2..7b65aa8d66 100644
--- a/osu.Game/osu.Game.csproj
+++ b/osu.Game/osu.Game.csproj
@@ -768,55 +768,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -839,9 +791,7 @@
-
-