Crate bevy_testing

Source
Expand description

Crates.io Size GitHub Issues or Pull Requests MIT License Bevy version 0.14.1

§Test things bevy!


use my_lib::{Countdown, CountdownPlugin};

// import bevy's and bevy_testing's prelude
use bevy_testing::p::*;

// create your app as usual
let mut app = App::new();
app.add_plugins(CountdownPlugin);

// useful world methods are exposed
app.spawn(Countdown(10));

// run schedules once
app.update_once();

// assert that a query returns some values
app.query::<&Countdown>()
    .matches(vec![&Countdown(9)]);

§Usage

just use bevy_testing::TestApp (view docs)!

In cases where you need more control, you can always get the world via App::world() and App::world_mut().

This library also exports bevy_testing::p, short for prelude, which contains the entire bevy prelude as well as TestApp.

§Query Matching

Use App::query() to check…

method namedescription
.matches()if the query matches the given bundles
.has()if the query contains the given bundle
.has_all()if the query contains all given bundles
.has_any()if the query contains any of the given bundles
.all()if all bundles match the given predicate
.any()if any bundle matches the given predicate
.length()if the query matches the given length
.not()to invert the test

§Bevy versions

bevybevy_testing
0.140.1.1

Modules§

p
A module that re-exports the entire bevy::prelude as well as TestApp.

Traits§

TestApp