droptest 0.1.0

A helper crate for testing drop-semantics
Documentation

droptest

Build Status Downloads Version License

Synopsis

A Rust helper crate for testing drop-semantics.

Motivation

When implementing one's own smart pointers or collections in Rust one tends to end up having to resort to manual memory management using std::ptr, including manual drop management. At which point one will want to write unit tests for making sure the implementation works as one expects it to.

This is where droptest comes in handy!

Usage

use droptest::prelude::*;

let registry = DropRegistry::default();
let guard = registry.new_guard();
let guard_id = guard.id();

assert_no_drop!(registry, guard_id);

std::mem::drop(guard);

assert_drop!(registry, guard_id);

Contributing

Please read CONTRIBUTING.md for details on our code of conduct,
and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the MPL-2.0 – see the LICENSE.md file for details.