# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies
#
# If you believe there's an error in this file please file an
# issue against the rust-lang/cargo repository. If you're
# editing this file be aware that the upstream Cargo.toml
# will likely look very different (and much more reasonable)

[package]
edition = "2018"
name = "test-case"
version = "1.0.0"
authors = ["Marcin Sas-Szymanski <marcin.sas-szymanski@anixe.pl>", "Wojciech Polak <frondeus@gmail.com>"]
build = "build.rs"
exclude = ["tests/snapshots/**/*"]
description = "Provides #[test_case(...)] procedural macro attribute for generating parametrized test cases easily"
documentation = "https://docs.rs/test-case"
readme = "README.md"
keywords = ["test", "case", "tests", "unit", "testing"]
categories = ["development-tools", "development-tools::testing"]
license = "MIT"
repository = "https://github.com/frondeus/test-case"

[lib]
path = "src/lib.rs"
doctest = false
proc-macro = true
[dependencies.proc-macro2]
version = "1.0"
features = []

[dependencies.quote]
version = "1.0"

[dependencies.syn]
version = "1.0"
features = ["full", "extra-traits"]
[dev-dependencies.insta]
version = "0.12.0"

[dev-dependencies.lazy_static]
version = "1.4.0"
[build-dependencies.version_check]
version = "0.9.1"
[badges.maintenance]
status = "actively-developed"

[badges.travis-ci]
branch = "master"
repository = "frondeus/test-case"
