31 lines
987 B
C++
31 lines
987 B
C++
#include <gtest/gtest.h>
|
|
|
|
#include "Platform/D3D12WindowRenderer.h"
|
|
#include "Platform/D3D12WindowRendererImGuiInterop.h"
|
|
|
|
#include <type_traits>
|
|
|
|
namespace {
|
|
|
|
using XCEngine::Editor::Platform::D3D12WindowRenderer;
|
|
using XCEngine::Rendering::RenderSurface;
|
|
|
|
TEST(D3D12WindowRendererApiTest, ExposesSurfaceAwareRenderCallbackAndAccessor) {
|
|
using Callback = D3D12WindowRenderer::RenderCallback;
|
|
|
|
static_assert(std::is_same_v<
|
|
decltype(std::declval<D3D12WindowRenderer&>().GetCurrentRenderSurface()),
|
|
const RenderSurface*>);
|
|
static_assert(std::is_same_v<
|
|
decltype(::XCEngine::Editor::Platform::RenderImGuiFrame(
|
|
std::declval<D3D12WindowRenderer&>(),
|
|
std::declval<::XCEngine::Editor::UI::ImGuiBackendBridge&>(),
|
|
std::declval<const float*>(),
|
|
std::declval<const Callback&>())),
|
|
void>);
|
|
|
|
SUCCEED();
|
|
}
|
|
|
|
} // namespace
|