Expand description
§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 name | description |
|---|---|
.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
| bevy | bevy_testing |
|---|---|
0.14 | 0.1.1 |
Modules§
- p
- A module that re-exports the entire
bevy::preludeas well asTestApp.