droptest 0.2.1

A helper crate for testing drop-semantics
Documentation
  • Coverage
  • 100%
    22 out of 22 items documented15 out of 19 items with examples
  • Size
  • Source code size: 38.75 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.8 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 12s Average build duration of successful builds.
  • all releases: 12s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • regexident/droptest
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • regexident

droptest

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