mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-15 08:06:19 +00:00
Update tests to use wgpu::DeviceDescriptor
Bug: dawn:160 Change-Id: I2fce45c5cc6f9e95054ad5fa42acfeb42ad787c5 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/72062 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Austin Eng <enga@chromium.org>
This commit is contained in:
@@ -419,8 +419,11 @@ TEST_F(CopyCommandTest_B2B, CopyWithinSameBuffer) {
|
||||
class CopyCommandTest_B2T : public CopyCommandTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"depth24unorm-stencil8", "depth32float-stencil8"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[2] = {wgpu::FeatureName::Depth24UnormStencil8,
|
||||
wgpu::FeatureName::Depth32FloatStencil8};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 2;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
@@ -1000,8 +1003,11 @@ TEST_F(CopyCommandTest_B2T, RequiredBytesInCopyOverflow) {
|
||||
class CopyCommandTest_T2B : public CopyCommandTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"depth24unorm-stencil8", "depth32float-stencil8"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[2] = {wgpu::FeatureName::Depth24UnormStencil8,
|
||||
wgpu::FeatureName::Depth32FloatStencil8};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 2;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
@@ -1633,8 +1639,11 @@ TEST_F(CopyCommandTest_T2B, RequiredBytesInCopyOverflow) {
|
||||
class CopyCommandTest_T2T : public CopyCommandTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"depth24unorm-stencil8", "depth32float-stencil8"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[2] = {wgpu::FeatureName::Depth24UnormStencil8,
|
||||
wgpu::FeatureName::Depth32FloatStencil8};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 2;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
@@ -2076,9 +2085,12 @@ TEST_F(CopyCommandTest_T2T, CopyWithinSameTexture) {
|
||||
class CopyCommandTest_CompressedTextureFormats : public CopyCommandTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"texture-compression-bc", "texture-compression-etc2",
|
||||
"texture-compression-astc"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[3] = {wgpu::FeatureName::TextureCompressionBC,
|
||||
wgpu::FeatureName::TextureCompressionETC2,
|
||||
wgpu::FeatureName::TextureCompressionASTC};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 3;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
|
||||
|
||||
@@ -44,9 +44,10 @@ TEST_F(TextureInternalUsageValidationDisabledTest, RequiresFeature) {
|
||||
|
||||
class TextureInternalUsageValidationTest : public ValidationTest {
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures.push_back("dawn-internal-usages");
|
||||
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[1] = {wgpu::FeatureName::DawnInternalUsages};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 1;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -225,9 +225,17 @@ TEST_F(OcclusionQueryValidationTest, InvalidBeginAndEnd) {
|
||||
class TimestampQueryValidationTest : public QuerySetValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures.push_back("timestamp-query");
|
||||
descriptor.forceDisabledToggles.push_back("disallow_unsafe_apis");
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[1] = {wgpu::FeatureName::TimestampQuery};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 1;
|
||||
|
||||
wgpu::DawnTogglesDeviceDescriptor togglesDesc;
|
||||
descriptor.nextInChain = &togglesDesc;
|
||||
const char* forceDisabledToggles[1] = {"disallow_unsafe_apis"};
|
||||
togglesDesc.forceDisabledToggles = forceDisabledToggles;
|
||||
togglesDesc.forceDisabledTogglesCount = 1;
|
||||
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
@@ -429,11 +437,19 @@ TEST_F(TimestampQueryValidationTest, WriteTimestampOnRenderPassEncoder) {
|
||||
class PipelineStatisticsQueryValidationTest : public QuerySetValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures.push_back("pipeline-statistics-query");
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[1] = {wgpu::FeatureName::PipelineStatisticsQuery};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 1;
|
||||
|
||||
// TODO(crbug.com/1177506): Pipeline statistic query is an unsafe API, disable disallowing
|
||||
// unsafe APIs to test it.
|
||||
descriptor.forceDisabledToggles.push_back("disallow_unsafe_apis");
|
||||
wgpu::DawnTogglesDeviceDescriptor togglesDesc;
|
||||
descriptor.nextInChain = &togglesDesc;
|
||||
const char* forceDisabledToggles[1] = {"disallow_unsafe_apis"};
|
||||
togglesDesc.forceDisabledToggles = forceDisabledToggles;
|
||||
togglesDesc.forceDisabledTogglesCount = 1;
|
||||
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -557,9 +557,12 @@ namespace {
|
||||
class WriteTextureTest_CompressedTextureFormats : public QueueWriteTextureValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"texture-compression-bc", "texture-compression-etc2",
|
||||
"texture-compression-astc"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[3] = {wgpu::FeatureName::TextureCompressionBC,
|
||||
wgpu::FeatureName::TextureCompressionETC2,
|
||||
wgpu::FeatureName::TextureCompressionASTC};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 3;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
|
||||
|
||||
@@ -1172,8 +1172,10 @@ TEST_F(RenderPipelineValidationTest, BindingsFromCorrectEntryPoint) {
|
||||
class DepthClampingValidationTest : public RenderPipelineValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"depth-clamping"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[1] = {wgpu::FeatureName::DepthClamping};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 1;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -58,7 +58,7 @@ class RequestDeviceValidationTest : public ValidationTest {
|
||||
|
||||
// Test that requesting a device without specifying limits is valid.
|
||||
TEST_F(RequestDeviceValidationTest, NoRequiredLimits) {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
adapter.RequestDevice(&descriptor, ExpectRequestDeviceSuccess,
|
||||
CheckDevice([](wgpu::Device device) {
|
||||
// Check one of the default limits.
|
||||
@@ -71,8 +71,8 @@ TEST_F(RequestDeviceValidationTest, NoRequiredLimits) {
|
||||
// Test that requesting a device with the default limits is valid.
|
||||
TEST_F(RequestDeviceValidationTest, DefaultLimits) {
|
||||
wgpu::RequiredLimits limits = {};
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredLimits = reinterpret_cast<const WGPURequiredLimits*>(&limits);
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
descriptor.requiredLimits = &limits;
|
||||
adapter.RequestDevice(&descriptor, ExpectRequestDeviceSuccess,
|
||||
CheckDevice([](wgpu::Device device) {
|
||||
// Check one of the default limits.
|
||||
@@ -85,8 +85,8 @@ TEST_F(RequestDeviceValidationTest, DefaultLimits) {
|
||||
// Test that requesting a device where a required limit is above the maximum value.
|
||||
TEST_F(RequestDeviceValidationTest, HigherIsBetter) {
|
||||
wgpu::RequiredLimits limits = {};
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredLimits = reinterpret_cast<const WGPURequiredLimits*>(&limits);
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
descriptor.requiredLimits = &limits;
|
||||
|
||||
wgpu::SupportedLimits supportedLimits;
|
||||
EXPECT_TRUE(adapter.GetLimits(reinterpret_cast<WGPUSupportedLimits*>(&supportedLimits)));
|
||||
@@ -138,8 +138,8 @@ TEST_F(RequestDeviceValidationTest, HigherIsBetter) {
|
||||
// Test that requesting a device where a required limit is below the minimum value.
|
||||
TEST_F(RequestDeviceValidationTest, LowerIsBetter) {
|
||||
wgpu::RequiredLimits limits = {};
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredLimits = reinterpret_cast<const WGPURequiredLimits*>(&limits);
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
descriptor.requiredLimits = &limits;
|
||||
|
||||
wgpu::SupportedLimits supportedLimits;
|
||||
EXPECT_TRUE(adapter.GetLimits(reinterpret_cast<WGPUSupportedLimits*>(&supportedLimits)));
|
||||
@@ -199,7 +199,7 @@ TEST_F(RequestDeviceValidationTest, InvalidChainedStruct) {
|
||||
wgpu::RequiredLimits limits = {};
|
||||
limits.nextInChain = &depthClamp;
|
||||
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredLimits = reinterpret_cast<const WGPURequiredLimits*>(&limits);
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
descriptor.requiredLimits = &limits;
|
||||
adapter.RequestDevice(&descriptor, ExpectRequestDeviceError, nullptr);
|
||||
}
|
||||
|
||||
@@ -597,8 +597,10 @@ namespace {
|
||||
class D24S8TextureFormatsValidationTests : public TextureValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"depth24unorm-stencil8"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[1] = {wgpu::FeatureName::Depth24UnormStencil8};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 1;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
@@ -617,8 +619,10 @@ namespace {
|
||||
class D32S8TextureFormatsValidationTests : public TextureValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"depth32float-stencil8"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[1] = {wgpu::FeatureName::Depth32FloatStencil8};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 1;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
@@ -639,9 +643,12 @@ namespace {
|
||||
class CompressedTextureFormatsValidationTests : public TextureValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"texture-compression-bc", "texture-compression-etc2",
|
||||
"texture-compression-astc"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[3] = {wgpu::FeatureName::TextureCompressionBC,
|
||||
wgpu::FeatureName::TextureCompressionETC2,
|
||||
wgpu::FeatureName::TextureCompressionASTC};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 3;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
|
||||
|
||||
@@ -652,8 +652,10 @@ namespace {
|
||||
class D24S8TextureViewValidationTests : public ValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"depth24unorm-stencil8"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[1] = {wgpu::FeatureName::Depth24UnormStencil8};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 1;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
@@ -696,8 +698,10 @@ namespace {
|
||||
class D32S8TextureViewValidationTests : public ValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"depth32float-stencil8"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[1] = {wgpu::FeatureName::Depth32FloatStencil8};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 1;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -43,8 +43,11 @@ namespace {
|
||||
// Create device with a valid name of a toggle
|
||||
{
|
||||
const char* kValidToggleName = "emulate_store_and_msaa_resolve";
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.forceEnabledToggles.push_back(kValidToggleName);
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::DawnTogglesDeviceDescriptor togglesDesc;
|
||||
descriptor.nextInChain = &togglesDesc;
|
||||
togglesDesc.forceEnabledToggles = &kValidToggleName;
|
||||
togglesDesc.forceEnabledTogglesCount = 1;
|
||||
|
||||
WGPUDevice deviceWithToggle = adapter.CreateDevice(&descriptor);
|
||||
std::vector<const char*> toggleNames = dawn_native::GetTogglesUsed(deviceWithToggle);
|
||||
@@ -60,8 +63,11 @@ namespace {
|
||||
// Create device with an invalid toggle name
|
||||
{
|
||||
const char* kInvalidToggleName = "!@#$%^&*";
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.forceEnabledToggles.push_back(kInvalidToggleName);
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::DawnTogglesDeviceDescriptor togglesDesc;
|
||||
descriptor.nextInChain = &togglesDesc;
|
||||
togglesDesc.forceEnabledToggles = &kInvalidToggleName;
|
||||
togglesDesc.forceEnabledTogglesCount = 1;
|
||||
|
||||
WGPUDevice deviceWithToggle = adapter.CreateDevice(&descriptor);
|
||||
std::vector<const char*> toggleNames = dawn_native::GetTogglesUsed(deviceWithToggle);
|
||||
@@ -77,8 +83,11 @@ namespace {
|
||||
|
||||
TEST_F(ToggleValidationTest, TurnOffVsyncWithToggle) {
|
||||
const char* kValidToggleName = "turn_off_vsync";
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.forceEnabledToggles.push_back(kValidToggleName);
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::DawnTogglesDeviceDescriptor togglesDesc;
|
||||
descriptor.nextInChain = &togglesDesc;
|
||||
togglesDesc.forceEnabledToggles = &kValidToggleName;
|
||||
togglesDesc.forceEnabledTogglesCount = 1;
|
||||
|
||||
WGPUDevice deviceWithToggle = adapter.CreateDevice(&descriptor);
|
||||
std::vector<const char*> toggleNames = dawn_native::GetTogglesUsed(deviceWithToggle);
|
||||
|
||||
@@ -22,8 +22,12 @@
|
||||
class UnsafeAPIValidationTest : public ValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.forceEnabledToggles.push_back("disallow_unsafe_apis");
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::DawnTogglesDeviceDescriptor togglesDesc;
|
||||
descriptor.nextInChain = &togglesDesc;
|
||||
const char* toggle = "disallow_unsafe_apis";
|
||||
togglesDesc.forceEnabledToggles = &toggle;
|
||||
togglesDesc.forceEnabledTogglesCount = 1;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
@@ -71,10 +75,18 @@ TEST_F(UnsafeAPIValidationTest, PipelineOverridableConstants) {
|
||||
class UnsafeQueryAPIValidationTest : public ValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures.push_back("pipeline-statistics-query");
|
||||
descriptor.requiredFeatures.push_back("timestamp-query");
|
||||
descriptor.forceEnabledToggles.push_back("disallow_unsafe_apis");
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[2] = {wgpu::FeatureName::PipelineStatisticsQuery,
|
||||
wgpu::FeatureName::TimestampQuery};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 2;
|
||||
|
||||
wgpu::DawnTogglesDeviceDescriptor togglesDesc;
|
||||
descriptor.nextInChain = &togglesDesc;
|
||||
const char* toggle = "disallow_unsafe_apis";
|
||||
togglesDesc.forceEnabledToggles = &toggle;
|
||||
togglesDesc.forceEnabledTogglesCount = 1;
|
||||
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -195,17 +195,26 @@ wgpu::SupportedLimits ValidationTest::GetSupportedLimits() {
|
||||
|
||||
WGPUDevice ValidationTest::CreateTestDevice() {
|
||||
// Disabled disallowing unsafe APIs so we can test them.
|
||||
dawn_native::DawnDeviceDescriptor deviceDescriptor;
|
||||
deviceDescriptor.forceDisabledToggles.push_back("disallow_unsafe_apis");
|
||||
std::vector<const char*> forceEnabledToggles;
|
||||
std::vector<const char*> forceDisabledToggles = {"disallow_unsafe_apis"};
|
||||
|
||||
for (const std::string& toggle : gToggleParser->GetEnabledToggles()) {
|
||||
deviceDescriptor.forceEnabledToggles.push_back(toggle.c_str());
|
||||
forceEnabledToggles.push_back(toggle.c_str());
|
||||
}
|
||||
|
||||
for (const std::string& toggle : gToggleParser->GetDisabledToggles()) {
|
||||
deviceDescriptor.forceDisabledToggles.push_back(toggle.c_str());
|
||||
forceDisabledToggles.push_back(toggle.c_str());
|
||||
}
|
||||
|
||||
wgpu::DeviceDescriptor deviceDescriptor;
|
||||
wgpu::DawnTogglesDeviceDescriptor togglesDesc;
|
||||
deviceDescriptor.nextInChain = &togglesDesc;
|
||||
|
||||
togglesDesc.forceEnabledToggles = forceEnabledToggles.data();
|
||||
togglesDesc.forceEnabledTogglesCount = forceEnabledToggles.size();
|
||||
togglesDesc.forceDisabledToggles = forceDisabledToggles.data();
|
||||
togglesDesc.forceDisabledTogglesCount = forceDisabledToggles.size();
|
||||
|
||||
return adapter.CreateDevice(&deviceDescriptor);
|
||||
}
|
||||
|
||||
|
||||
@@ -21,8 +21,10 @@ namespace {
|
||||
class VideoViewsValidation : public ValidationTest {
|
||||
protected:
|
||||
WGPUDevice CreateTestDevice() override {
|
||||
dawn_native::DawnDeviceDescriptor descriptor;
|
||||
descriptor.requiredFeatures = {"multiplanar-formats"};
|
||||
wgpu::DeviceDescriptor descriptor;
|
||||
wgpu::FeatureName requiredFeatures[1] = {wgpu::FeatureName::DawnMultiPlanarFormats};
|
||||
descriptor.requiredFeatures = requiredFeatures;
|
||||
descriptor.requiredFeaturesCount = 1;
|
||||
return adapter.CreateDevice(&descriptor);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user