wgpu_examples/
lib.rs

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