tests_bin

Crates.iotests_bin
lib.rstests_bin
version1.0.0
sourcesrc
created_at2023-04-28 18:36:31.00556
updated_at2023-04-28 18:36:31.00556
descriptionSimple solution to organize unit tests. VSCode extension included!
homepagehttps://github.com/NickelAngeStudio/tests_bin/wiki
repositoryhttps://github.com/NickelAngeStudio/tests_bin
max_upload_size
id851639
size113,401
NickelAngeStudio (NickelAngeStudio)

documentation

README

ubuntu-latest windows-latest macos-latest ubuntu-performance windows-performance macos-performance

tests_bin

This crate is aimed toward Rustacean who wish to have a bin folder where they can easily organize all their unit tests to clean their src folder. VSCode extension included! Visit Wiki for more informations.

Features

Crate

  • Organize your unit tests with one relative path.

  • Automatically create your unit tests module name.

  • Add attribute macro directly above your item for easier unit tests tracking.

  • Work with rust-analyzer to run your tests.

  • Unit tests folder path is customizable.

VSCode Extension

  • Shortcut to create new unit tests file in bin folder.
  • Open your unit tests files directly from your code.
  • Shortcuts to rename and delete unit tests file.
  • Customizable new unit tests file template.
  • Lots of settings to fit your taste.

More features details in wiki.

Installation

cargo add tests_bin

VSCode extension installation

Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.

ext install nas.rust-tests-bin

Usage

use tests_bin::{ unit__tests, unit_tests };

// Will link a module to `tests/unit/global_tests.rs` with a module named `global_test_rs`.
unit__tests!("global_tests.rs");
 
// Will link a module to `tests/unit/add.rs` with a module named `pub_fn_add_usize`.
#[unit_tests("add.rs")]
pub fn add(left: usize, right: usize) -> usize {
    left + right
}

Syntax

Without item : unit__tests!("relative_path.rs" {, "module name"});
With an item : #[unit_tests("relative_path.rs" {, "module name"})] item
The element in {} are optional. The extension .rs is required.

License

MIT

Commit count: 55

cargo fmt