mirror of
https://github.com/MadeOfJelly/MushMachine.git
synced 2025-07-04 00:26:46 +02:00
refactor, move vulkan to proper location
This commit is contained in:
13
framework/vulkan_renderer/test/CMakeLists.txt
Normal file
13
framework/vulkan_renderer/test/CMakeLists.txt
Normal file
@ -0,0 +1,13 @@
|
||||
add_executable(vulkan_renderer_test
|
||||
./vulkan_test.cpp
|
||||
)
|
||||
|
||||
target_include_directories(vulkan_renderer_test PRIVATE ".")
|
||||
|
||||
target_link_libraries(vulkan_renderer_test
|
||||
vulkan_renderer
|
||||
gtest_main
|
||||
)
|
||||
|
||||
add_test(NAME vulkan_renderer_test COMMAND vulkan_renderer_test)
|
||||
|
37
framework/vulkan_renderer/test/vulkan_test.cpp
Normal file
37
framework/vulkan_renderer/test/vulkan_test.cpp
Normal file
@ -0,0 +1,37 @@
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include <mm/engine.hpp>
|
||||
#include <mm/services/sdl_service.hpp>
|
||||
#include <mm/services/vulkan_renderer.hpp>
|
||||
|
||||
#include <mm/logger.hpp>
|
||||
|
||||
TEST(sdl_service, window_vulkan) {
|
||||
MM::Engine engine;
|
||||
|
||||
engine.addService<MM::Services::SDLService>();
|
||||
ASSERT_TRUE(engine.enableService<MM::Services::SDLService>());
|
||||
|
||||
auto* sdl_ss_ptr = engine.tryService<MM::Services::SDLService>();
|
||||
ASSERT_NE(sdl_ss_ptr, nullptr);
|
||||
|
||||
// create window
|
||||
ASSERT_EQ(sdl_ss_ptr->win, nullptr);
|
||||
ASSERT_TRUE(sdl_ss_ptr->createWindow("test vulkan window", 800, 600, SDL_WINDOW_VULKAN));
|
||||
ASSERT_NE(sdl_ss_ptr->win, nullptr);
|
||||
|
||||
engine.addService<MM::Services::VulkanRenderer>();
|
||||
ASSERT_TRUE(engine.enableService<MM::Services::VulkanRenderer>());
|
||||
|
||||
auto& vk_rend = engine.getService<MM::Services::VulkanRenderer>();
|
||||
ASSERT_TRUE(vk_rend.createDevice(engine));
|
||||
ASSERT_TRUE(vk_rend.createSwapchain(engine));
|
||||
|
||||
engine.run();
|
||||
|
||||
engine.disableService<MM::Services::VulkanRenderer>();
|
||||
engine.disableService<MM::Services::SDLService>();
|
||||
|
||||
ASSERT_EQ(sdl_ss_ptr->win, nullptr);
|
||||
}
|
||||
|
Reference in New Issue
Block a user