[package] name = "egui_kittest" version.workspace = true authors = ["Lucas Meurer ", "Emil Ernerfeldt "] description = "Testing library for egui based on kittest and AccessKit" edition.workspace = true rust-version.workspace = true homepage = "https://github.com/emilk/egui" license.workspace = true readme = "./README.md" repository = "https://github.com/emilk/egui" categories = ["gui", "development-tools::testing", "accessibility"] keywords = ["gui", "immediate", "egui", "testing", "accesskit"] include = ["../../LICENSE-APACHE", "../../LICENSE-MIT", "**/*.rs", "Cargo.toml"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [package.metadata.docs.rs] all-features = true rustdoc-args = ["--generate-link-to-definition"] [features] ## Adds a wgpu-based test renderer. wgpu = ["dep:egui-wgpu", "dep:pollster", "dep:image", "dep:wgpu", "eframe?/wgpu"] ## Adds a dify-based image snapshot utility. snapshot = ["dep:dify", "dep:image", "dep:open", "dep:tempfile", "image/png"] ## Record a test session as an animated GIF or a sequence of PNG files. ## ## Needs a renderer, so enable the `wgpu` feature too, unless you bring your own. ## Every harness then follows the egui textures, so that a recording can start at any time, ## but nothing is rendered until a recording starts. recording = ["snapshot", "dep:image", "image/gif"] ## Allows testing eframe::App eframe = ["dep:eframe", "eframe/accesskit"] # This is just so it compiles with `--all-features` on Linux x11 = ["eframe?/x11"] [dependencies] egui.workspace = true eframe = { workspace = true, optional = true } kittest.workspace = true log.workspace = true serde.workspace = true toml = { workspace = true, features = ["parse", "serde"] } # wgpu dependencies egui-wgpu = { workspace = true, optional = true } pollster = { workspace = true, optional = true } image = { workspace = true, optional = true } # Enable DX12 because it always comes with a software rasterizer. wgpu = { workspace = true, features = ["metal", "dx12", "vulkan", "gles"], optional = true } # snapshot dependencies dify = { workspace = true, optional = true } # Enable this when generating docs. document-features = { workspace = true, optional = true } # Native dependencies: [target.'cfg(not(target_arch = "wasm32"))'.dependencies] open = { workspace = true, optional = true } tempfile = { workspace = true, optional = true } [dev-dependencies] egui = { workspace = true, features = ["default_fonts"] } image = { workspace = true, features = ["png"] } egui_extras = { workspace = true, features = ["image", "http"] } tempfile.workspace = true [lints] workspace = true