diff --git a/.travis.yml b/.travis.yml index 6b8519f..1926f84 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,3 +13,10 @@ rust: matrix: allow_failures: - rust: nightly + +script: + - if [[ "$TRAVIS_RUST_VERSION" == "nightly" ]]; then + cargo test --features readme; + else + cargo test; + fi diff --git a/Cargo.toml b/Cargo.toml index df18a09..e9a2270 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,3 +16,9 @@ exclude = ["/.travis.yml", "/dev"] [badges] travis-ci = { repository = "dguo/strsim-rs" } + +[dev-dependencies] +doc-comment = "0.3" + +[features] +readme = [] # to be used to test readme examples as long as cfg(doctest) is unstable diff --git a/src/lib.rs b/src/lib.rs index 131a65a..6058081 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,5 +1,16 @@ //! This library implements string similarity metrics. +#![cfg_attr(feature = "readme", feature(cfg_doctest))] + +#[cfg(feature = "readme")] +#[cfg(doctest)] +#[macro_use] +extern crate doc_comment; + +#[cfg(feature = "readme")] +#[cfg(doctest)] +doctest!("../README.md"); + use std::char; use std::cmp::{max, min}; use std::collections::HashMap;