mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-20 18:29:23 +00:00
Autogenerate all of the wire callback mocks
This makes it less manual code and less error prone to add new callbacks to the wire. Bug: dawn:384 Change-Id: I8547af2dba8289d1badd41e53dd732c776fb5d06 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/35600 Reviewed-by: Jiawei Shao <jiawei.shao@intel.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Austin Eng <enga@chromium.org>
This commit is contained in:
committed by
Commit Bot service account
parent
5ca12a825c
commit
8d38c0164c
@@ -30,7 +30,7 @@ struct FenceOnCompletionExpectation {
|
||||
};
|
||||
|
||||
static std::unique_ptr<MockFenceOnCompletionCallback> mockFenceOnCompletionCallback;
|
||||
static void ToMockFenceOnCompletionCallback(WGPUFenceCompletionStatus status, void* userdata) {
|
||||
static void ToMockFenceOnCompletion(WGPUFenceCompletionStatus status, void* userdata) {
|
||||
mockFenceOnCompletionCallback->Call(status, userdata);
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ class FenceValidationTest : public ValidationTest {
|
||||
expectation->status = status;
|
||||
|
||||
EXPECT_CALL(*mockFenceOnCompletionCallback, Call(status, expectation)).Times(1);
|
||||
fence.OnCompletion(value, ToMockFenceOnCompletionCallback, expectation);
|
||||
fence.OnCompletion(value, ToMockFenceOnCompletion, expectation);
|
||||
}
|
||||
|
||||
wgpu::Queue queue;
|
||||
@@ -99,11 +99,11 @@ TEST_F(FenceValidationTest, OnCompletionImmediate) {
|
||||
|
||||
EXPECT_CALL(*mockFenceOnCompletionCallback, Call(WGPUFenceCompletionStatus_Success, this + 0))
|
||||
.Times(1);
|
||||
fence.OnCompletion(0u, ToMockFenceOnCompletionCallback, this + 0);
|
||||
fence.OnCompletion(0u, ToMockFenceOnCompletion, this + 0);
|
||||
|
||||
EXPECT_CALL(*mockFenceOnCompletionCallback, Call(WGPUFenceCompletionStatus_Success, this + 1))
|
||||
.Times(1);
|
||||
fence.OnCompletion(1u, ToMockFenceOnCompletionCallback, this + 1);
|
||||
fence.OnCompletion(1u, ToMockFenceOnCompletion, this + 1);
|
||||
}
|
||||
|
||||
// Test setting OnCompletion handlers for values > signaled value
|
||||
@@ -115,13 +115,13 @@ TEST_F(FenceValidationTest, OnCompletionLargerThanSignaled) {
|
||||
// Cannot signal for values > signaled value
|
||||
EXPECT_CALL(*mockFenceOnCompletionCallback, Call(WGPUFenceCompletionStatus_Error, nullptr))
|
||||
.Times(1);
|
||||
ASSERT_DEVICE_ERROR(fence.OnCompletion(2u, ToMockFenceOnCompletionCallback, nullptr));
|
||||
ASSERT_DEVICE_ERROR(fence.OnCompletion(2u, ToMockFenceOnCompletion, nullptr));
|
||||
|
||||
// Can set handler after signaling
|
||||
queue.Signal(fence, 2);
|
||||
EXPECT_CALL(*mockFenceOnCompletionCallback, Call(WGPUFenceCompletionStatus_Success, nullptr))
|
||||
.Times(1);
|
||||
fence.OnCompletion(2u, ToMockFenceOnCompletionCallback, nullptr);
|
||||
fence.OnCompletion(2u, ToMockFenceOnCompletion, nullptr);
|
||||
|
||||
WaitForAllOperations(device);
|
||||
}
|
||||
@@ -132,7 +132,7 @@ TEST_F(FenceValidationTest, GetCompletedValueInsideCallback) {
|
||||
wgpu::Fence fence = queue.CreateFence(&descriptor);
|
||||
|
||||
queue.Signal(fence, 3);
|
||||
fence.OnCompletion(2u, ToMockFenceOnCompletionCallback, nullptr);
|
||||
fence.OnCompletion(2u, ToMockFenceOnCompletion, nullptr);
|
||||
EXPECT_CALL(*mockFenceOnCompletionCallback, Call(WGPUFenceCompletionStatus_Success, nullptr))
|
||||
.WillOnce(Invoke([&](WGPUFenceCompletionStatus status, void* userdata) {
|
||||
EXPECT_EQ(fence.GetCompletedValue(), 3u);
|
||||
@@ -147,7 +147,7 @@ TEST_F(FenceValidationTest, GetCompletedValueAfterCallback) {
|
||||
wgpu::Fence fence = queue.CreateFence(&descriptor);
|
||||
|
||||
queue.Signal(fence, 2);
|
||||
fence.OnCompletion(2u, ToMockFenceOnCompletionCallback, nullptr);
|
||||
fence.OnCompletion(2u, ToMockFenceOnCompletion, nullptr);
|
||||
EXPECT_CALL(*mockFenceOnCompletionCallback, Call(WGPUFenceCompletionStatus_Success, nullptr))
|
||||
.Times(1);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user