mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-21 10:49:14 +00:00
Split Pipeline in Render and Compute, test part
This commit is contained in:
committed by
Corentin Wallez
parent
29ced285d4
commit
e20c5ee9ff
@@ -242,14 +242,14 @@ TEST_F(WireTests, CStringArgument) {
|
||||
.WillOnce(Return(apiShaderModule));
|
||||
|
||||
// Create pipeline
|
||||
nxtPipelineBuilder pipelineBuilder = nxtDeviceCreatePipelineBuilder(device);
|
||||
nxtPipelineBuilderSetStage(pipelineBuilder, NXT_SHADER_STAGE_FRAGMENT, shaderModule, "my entry point");
|
||||
nxtRenderPipelineBuilder pipelineBuilder = nxtDeviceCreateRenderPipelineBuilder(device);
|
||||
nxtRenderPipelineBuilderSetStage(pipelineBuilder, NXT_SHADER_STAGE_FRAGMENT, shaderModule, "my entry point");
|
||||
|
||||
nxtPipelineBuilder apiPipelineBuilder = api.GetNewPipelineBuilder();
|
||||
EXPECT_CALL(api, DeviceCreatePipelineBuilder(apiDevice))
|
||||
nxtRenderPipelineBuilder apiPipelineBuilder = api.GetNewRenderPipelineBuilder();
|
||||
EXPECT_CALL(api, DeviceCreateRenderPipelineBuilder(apiDevice))
|
||||
.WillOnce(Return(apiPipelineBuilder));
|
||||
|
||||
EXPECT_CALL(api, PipelineBuilderSetStage(apiPipelineBuilder, NXT_SHADER_STAGE_FRAGMENT, apiShaderModule, StrEq("my entry point")));
|
||||
EXPECT_CALL(api, RenderPipelineBuilderSetStage(apiPipelineBuilder, NXT_SHADER_STAGE_FRAGMENT, apiShaderModule, StrEq("my entry point")));
|
||||
|
||||
FlushClient();
|
||||
}
|
||||
@@ -257,26 +257,26 @@ TEST_F(WireTests, CStringArgument) {
|
||||
// Test that the wire is able to send objects as value arguments
|
||||
TEST_F(WireTests, ObjectAsValueArgument) {
|
||||
// Create pipeline
|
||||
nxtPipelineBuilder pipelineBuilder = nxtDeviceCreatePipelineBuilder(device);
|
||||
nxtPipeline pipeline = nxtPipelineBuilderGetResult(pipelineBuilder);
|
||||
nxtRenderPipelineBuilder pipelineBuilder = nxtDeviceCreateRenderPipelineBuilder(device);
|
||||
nxtRenderPipeline pipeline = nxtRenderPipelineBuilderGetResult(pipelineBuilder);
|
||||
|
||||
nxtPipelineBuilder apiPipelineBuilder = api.GetNewPipelineBuilder();
|
||||
EXPECT_CALL(api, DeviceCreatePipelineBuilder(apiDevice))
|
||||
nxtRenderPipelineBuilder apiPipelineBuilder = api.GetNewRenderPipelineBuilder();
|
||||
EXPECT_CALL(api, DeviceCreateRenderPipelineBuilder(apiDevice))
|
||||
.WillOnce(Return(apiPipelineBuilder));
|
||||
|
||||
nxtPipeline apiPipeline = api.GetNewPipeline();
|
||||
EXPECT_CALL(api, PipelineBuilderGetResult(apiPipelineBuilder))
|
||||
nxtRenderPipeline apiPipeline = api.GetNewRenderPipeline();
|
||||
EXPECT_CALL(api, RenderPipelineBuilderGetResult(apiPipelineBuilder))
|
||||
.WillOnce(Return(apiPipeline));
|
||||
|
||||
// Create command buffer builder, setting pipeline
|
||||
nxtCommandBufferBuilder cmdBufBuilder = nxtDeviceCreateCommandBufferBuilder(device);
|
||||
nxtCommandBufferBuilderSetPipeline(cmdBufBuilder, pipeline);
|
||||
nxtCommandBufferBuilderSetRenderPipeline(cmdBufBuilder, pipeline);
|
||||
|
||||
nxtCommandBufferBuilder apiCmdBufBuilder = api.GetNewCommandBufferBuilder();
|
||||
EXPECT_CALL(api, DeviceCreateCommandBufferBuilder(apiDevice))
|
||||
.WillOnce(Return(apiCmdBufBuilder));
|
||||
|
||||
EXPECT_CALL(api, CommandBufferBuilderSetPipeline(apiCmdBufBuilder, apiPipeline));
|
||||
EXPECT_CALL(api, CommandBufferBuilderSetRenderPipeline(apiCmdBufBuilder, apiPipeline));
|
||||
|
||||
FlushClient();
|
||||
}
|
||||
|
||||
@@ -120,4 +120,4 @@ TEST_F(FramebufferValidationTest, AttachmentSizeMatchFramebufferSize) {
|
||||
}
|
||||
|
||||
// TODO(cwallez@chromium.org): also test with a mismatches depth / stencil
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ static constexpr uint32_t kMaxVertexInputs = 16u;
|
||||
|
||||
class InputStateTest : public ValidationTest {
|
||||
protected:
|
||||
nxt::Pipeline CreatePipeline(bool success, const nxt::InputState& inputState, std::string vertexSource) {
|
||||
nxt::RenderPipeline CreatePipeline(bool success, const nxt::InputState& inputState, std::string vertexSource) {
|
||||
nxt::RenderPass renderPass = AssertWillBeSuccess(device.CreateRenderPassBuilder())
|
||||
.SetAttachmentCount(1)
|
||||
.AttachmentSetFormat(0, nxt::TextureFormat::R8G8B8A8Unorm)
|
||||
@@ -44,11 +44,11 @@ class InputStateTest : public ValidationTest {
|
||||
)");
|
||||
nxt::ShaderModule fsModule = fsModuleBuilder.GetResult();
|
||||
|
||||
nxt::PipelineBuilder builder;
|
||||
nxt::RenderPipelineBuilder builder;
|
||||
if (success) {
|
||||
builder = AssertWillBeSuccess(device.CreatePipelineBuilder());
|
||||
builder = AssertWillBeSuccess(device.CreateRenderPipelineBuilder());
|
||||
} else {
|
||||
builder = AssertWillBeError(device.CreatePipelineBuilder());
|
||||
builder = AssertWillBeError(device.CreateRenderPipelineBuilder());
|
||||
}
|
||||
|
||||
return builder.SetSubpass(renderPass, 0)
|
||||
|
||||
Reference in New Issue
Block a user