wgpu_examples/
lib.rs

1#![allow(clippy::arc_with_non_send_sync)] // False positive on wasm
2#![warn(clippy::allow_attributes)]
3
4pub mod framework;
5pub mod utils;
6
7pub mod big_compute_buffers;
8pub mod boids;
9pub mod bunnymark;
10pub mod conservative_raster;
11pub mod cube;
12pub mod hello_synchronization;
13pub mod hello_triangle;
14pub mod hello_windows;
15pub mod hello_workgroups;
16pub mod mesh_shader;
17pub mod mipmap;
18pub mod msaa_line;
19pub mod multiple_render_targets;
20pub mod ray_cube_compute;
21pub mod ray_cube_fragment;
22pub mod ray_cube_normals;
23pub mod ray_scene;
24pub mod ray_shadows;
25pub mod ray_traced_triangle;
26pub mod render_to_texture;
27pub mod repeated_compute;
28pub mod shadow;
29pub mod skybox;
30pub mod srgb_blend;
31pub mod stencil_triangles;
32pub mod storage_texture;
33pub mod texture_arrays;
34pub mod timestamp_queries;
35pub mod uniform_values;
36pub mod water;
37
38#[cfg(test)]
39fn all_tests() -> Vec<wgpu_test::GpuTestInitializer> {
40    #[cfg_attr(
41        target_arch = "wasm32",
42        expect(unused_mut, reason = "non-wasm32 needs this mutable")
43    )]
44    let mut test_list = vec![
45        boids::TEST,
46        bunnymark::TEST,
47        conservative_raster::TEST,
48        cube::TEST,
49        cube::TEST_LINES,
50        hello_synchronization::tests::SYNC,
51        mipmap::TEST,
52        mipmap::TEST_QUERY,
53        msaa_line::TEST,
54        multiple_render_targets::TEST,
55        ray_cube_compute::TEST,
56        ray_cube_fragment::TEST,
57        ray_cube_normals::TEST,
58        ray_scene::TEST,
59        ray_shadows::TEST,
60        ray_traced_triangle::TEST,
61        shadow::TEST,
62        skybox::TEST,
63        skybox::TEST_ASTC,
64        skybox::TEST_BCN,
65        skybox::TEST_ETC2,
66        srgb_blend::TEST_LINEAR,
67        srgb_blend::TEST_SRGB,
68        stencil_triangles::TEST,
69        texture_arrays::TEST,
70        texture_arrays::TEST_NON_UNIFORM,
71        texture_arrays::TEST_UNIFORM,
72        timestamp_queries::tests::TIMESTAMPS_ENCODER,
73        timestamp_queries::tests::TIMESTAMPS_PASSES,
74        timestamp_queries::tests::TIMESTAMPS_PASS_BOUNDARIES,
75        water::TEST,
76    ];
77
78    #[cfg(not(target_arch = "wasm32"))]
79    {
80        test_list.push(big_compute_buffers::tests::TWO_BUFFERS);
81    }
82
83    test_list
84}
85
86#[cfg(test)]
87wgpu_test::gpu_test_main!(all_tests());