diff --git a/TShockLauncher.Tests/GroupTests.cs b/TShockLauncher.Tests/GroupTests.cs index 61a70b33..5eff651f 100644 --- a/TShockLauncher.Tests/GroupTests.cs +++ b/TShockLauncher.Tests/GroupTests.cs @@ -1,6 +1,4 @@ using NUnit.Framework; -using Terraria; -using Terraria.Localization; using TShockAPI; using TShockAPI.DB; @@ -8,21 +6,6 @@ namespace TShockLauncher.Tests; public class GroupTests { - /// - /// This will be called automatically by nunit before other tests in this class. - /// It serves to initialise the bare minimum variables needed for TShock to be testable without booting up an actual server. - /// - [SetUp] - public static void SetupTShock() - { - Program.SavePath = ""; // 1.4.4.2 staticness introduced this where by default it is null, and any touch to Terraria.Main will use it and cause a crash. - LanguageManager.Instance.SetLanguage(GameCulture.DefaultCulture); // TShockAPI.Localization will fail without ActiveCulture set - Lang.InitializeLegacyLocalization(); // TShockAPI.Localization will fail without preparing NPC names etc - - var ts = new TShock(null); // prepares configs etc - ts.Initialize(); // used to prepare tshocks own static variables, such as the TShock.DB instance - } - /// /// This tests to ensure the group commands work. /// diff --git a/TShockLauncher.Tests/TestSetup.cs b/TShockLauncher.Tests/TestSetup.cs new file mode 100644 index 00000000..0e4abb42 --- /dev/null +++ b/TShockLauncher.Tests/TestSetup.cs @@ -0,0 +1,25 @@ +using NUnit.Framework; +using Terraria; +using Terraria.Localization; +using TShockAPI; + +namespace TShockLauncher.Tests; + +[SetUpFixture] +public class TestSetup +{ + /// + /// This will be called automatically by NUnit before the first test. + /// It serves to initialise the bare minimum variables needed for TShock to be testable without booting up an actual server. + /// + [OneTimeSetUp] + public static void SetupTShock() + { + Program.SavePath = ""; // 1.4.4.2 staticness introduced this where by default it is null, and any touch to Terraria.Main will use it and cause a crash. + LanguageManager.Instance.SetLanguage(GameCulture.DefaultCulture); // TShockAPI.Localization will fail without ActiveCulture set + Lang.InitializeLegacyLocalization(); // TShockAPI.Localization will fail without preparing NPC names etc + + var ts = new TShock(null); // prepares configs etc + ts.Initialize(); // used to prepare tshocks own static variables, such as the TShock.DB instance + } +}