bevy_testing

Crates.iobevy_testing
lib.rsbevy_testing
version0.1.2
created_at2024-08-20 01:49:39.175046+00
updated_at2024-08-20 14:26:14.686058+00
descriptionTesting library for bevy
homepage
repositoryhttps://github.com/bnjmn21/bevy_testing
max_upload_size
id1344760
size39,855
(bnjmn21)

documentation

README

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 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

Commit count: 11

cargo fmt