diff options
| author | Admiral H. Curtiss <pikachu025@gmail.com> | 2023-03-28 20:26:52 +0200 |
|---|---|---|
| committer | Admiral H. Curtiss <pikachu025@gmail.com> | 2023-04-09 21:48:37 +0200 |
| commit | 23843583bf2fcc349bef18b37e1a8539be3db17d (patch) | |
| tree | 30b0173c93d94adcba797f73ab308ada90327612 /Source/UnitTests/Core/CoreTimingTest.cpp | |
| parent | ebbbdc49ab3412693c40add3a56183926e0559b7 (diff) | |
PowerPC: Refactor to class, move to System.
Diffstat (limited to 'Source/UnitTests/Core/CoreTimingTest.cpp')
| -rw-r--r-- | Source/UnitTests/Core/CoreTimingTest.cpp | 41 |
1 files changed, 23 insertions, 18 deletions
diff --git a/Source/UnitTests/Core/CoreTimingTest.cpp b/Source/UnitTests/Core/CoreTimingTest.cpp index 3a8012cdf0..8857ef8aba 100644 --- a/Source/UnitTests/Core/CoreTimingTest.cpp +++ b/Source/UnitTests/Core/CoreTimingTest.cpp @@ -38,7 +38,7 @@ void CallbackTemplate(Core::System& system, u64 userdata, s64 lateness) class ScopeInit final { public: - ScopeInit() : m_profile_path(File::CreateTempDir()) + explicit ScopeInit(Core::System& system) : m_system(system), m_profile_path(File::CreateTempDir()) { if (!UserDirectoryExists()) { @@ -48,8 +48,7 @@ public: UICommon::SetUserDirectory(m_profile_path); Config::Init(); SConfig::Init(); - PowerPC::Init(PowerPC::CPUCore::Interpreter); - auto& system = Core::System::GetInstance(); + system.GetPowerPC().Init(PowerPC::CPUCore::Interpreter); auto& core_timing = system.GetCoreTiming(); core_timing.Init(); } @@ -59,10 +58,9 @@ public: { return; } - auto& system = Core::System::GetInstance(); - auto& core_timing = system.GetCoreTiming(); + auto& core_timing = m_system.GetCoreTiming(); core_timing.Shutdown(); - PowerPC::Shutdown(); + m_system.GetPowerPC().Shutdown(); SConfig::Shutdown(); Config::Shutdown(); Core::UndeclareAsCPUThread(); @@ -71,6 +69,7 @@ public: bool UserDirectoryExists() const { return !m_profile_path.empty(); } private: + Core::System& m_system; std::string m_profile_path; }; @@ -92,10 +91,11 @@ static void AdvanceAndCheck(Core::System& system, u32 idx, int downcount, int ex TEST(CoreTiming, BasicOrder) { - ScopeInit guard; + auto& system = Core::System::GetInstance(); + + ScopeInit guard(system); ASSERT_TRUE(guard.UserDirectoryExists()); - auto& system = Core::System::GetInstance(); auto& core_timing = system.GetCoreTiming(); auto& ppc_state = system.GetPPCState(); @@ -147,10 +147,11 @@ TEST(CoreTiming, SharedSlot) { using namespace SharedSlotTest; - ScopeInit guard; + auto& system = Core::System::GetInstance(); + + ScopeInit guard(system); ASSERT_TRUE(guard.UserDirectoryExists()); - auto& system = Core::System::GetInstance(); auto& core_timing = system.GetCoreTiming(); auto& ppc_state = system.GetPPCState(); @@ -181,10 +182,11 @@ TEST(CoreTiming, SharedSlot) TEST(CoreTiming, PredictableLateness) { - ScopeInit guard; + auto& system = Core::System::GetInstance(); + + ScopeInit guard(system); ASSERT_TRUE(guard.UserDirectoryExists()); - auto& system = Core::System::GetInstance(); auto& core_timing = system.GetCoreTiming(); CoreTiming::EventType* cb_a = core_timing.RegisterEvent("callbackA", CallbackTemplate<0>); @@ -222,10 +224,11 @@ TEST(CoreTiming, ChainScheduling) { using namespace ChainSchedulingTest; - ScopeInit guard; + auto& system = Core::System::GetInstance(); + + ScopeInit guard(system); ASSERT_TRUE(guard.UserDirectoryExists()); - auto& system = Core::System::GetInstance(); auto& core_timing = system.GetCoreTiming(); auto& ppc_state = system.GetPPCState(); @@ -282,10 +285,11 @@ TEST(CoreTiming, ScheduleIntoPast) { using namespace ScheduleIntoPastTest; - ScopeInit guard; + auto& system = Core::System::GetInstance(); + + ScopeInit guard(system); ASSERT_TRUE(guard.UserDirectoryExists()); - auto& system = Core::System::GetInstance(); auto& core_timing = system.GetCoreTiming(); auto& ppc_state = system.GetPPCState(); @@ -325,10 +329,11 @@ TEST(CoreTiming, ScheduleIntoPast) TEST(CoreTiming, Overclocking) { - ScopeInit guard; + auto& system = Core::System::GetInstance(); + + ScopeInit guard(system); ASSERT_TRUE(guard.UserDirectoryExists()); - auto& system = Core::System::GetInstance(); auto& core_timing = system.GetCoreTiming(); auto& ppc_state = system.GetPPCState(); |
