Tests for wgpu#4139. (#4148)

This commit is contained in:
Jim Blandy 2023-09-17 11:08:42 -07:00 committed by GitHub
parent 0ffdae31a1
commit f2bd557186
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 27 additions and 0 deletions

26
tests/tests/query_set.rs Normal file
View File

@ -0,0 +1,26 @@
use wgpu_test::{initialize_test, FailureCase, TestParameters};
#[test]
fn drop_failed_timestamp_query_set() {
let parameters = TestParameters::default()
// https://github.com/gfx-rs/wgpu/issues/4139
.expect_fail(FailureCase::always());
initialize_test(parameters, |ctx| {
// Enter an error scope, so the validation catch-all doesn't
// report the error too early.
ctx.device.push_error_scope(wgpu::ErrorFilter::Validation);
// Creating this query set should fail, since we didn't include
// TIMESTAMP_QUERY in our required features.
let bad_query_set = ctx.device.create_query_set(&wgpu::QuerySetDescriptor {
label: Some("doomed query set"),
ty: wgpu::QueryType::Timestamp,
count: 1,
});
// Dropping this should not panic.
drop(bad_query_set);
assert!(pollster::block_on(ctx.device.pop_error_scope()).is_some());
});
}

View File

@ -20,6 +20,7 @@ mod instance;
mod occlusion_query;
mod partially_bounded_arrays;
mod poll;
mod query_set;
mod queue_transfer;
mod resource_descriptor_accessor;
mod resource_error;