Update.
Fmt.
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -1,5 +1,3 @@
|
|||||||
/target/
|
/target/
|
||||||
|
|
||||||
Cargo.lock
|
Cargo.lock
|
||||||
|
|
||||||
/.criterion/
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ serde = "1.0"
|
|||||||
serde_derive = "1.0"
|
serde_derive = "1.0"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
criterion = { git = "https://github.com/japaric/criterion.rs.git" }
|
criterion = "0.2"
|
||||||
rand = "0.4"
|
rand = "0.4"
|
||||||
|
|
||||||
[[bench]]
|
[[bench]]
|
||||||
|
|||||||
@@ -3,21 +3,21 @@ extern crate criterion;
|
|||||||
|
|
||||||
extern crate byte_ngram;
|
extern crate byte_ngram;
|
||||||
|
|
||||||
use criterion::Criterion;
|
use criterion::{Benchmark, Criterion, Throughput};
|
||||||
|
|
||||||
use byte_ngram::*;
|
use byte_ngram::*;
|
||||||
|
|
||||||
fn criterion_benchmark(c: &mut Criterion) {
|
fn criterion_benchmark(c: &mut Criterion) {
|
||||||
let data = "Blackmail is such an ugly word. I prefer extortion. The 'x' makes it sound cool.";
|
let data = "Blackmail is such an ugly word. I prefer extortion. The 'x' makes it sound cool.";
|
||||||
|
|
||||||
let len = from_slice(&data[..]).len();
|
c.bench(
|
||||||
|
"parse",
|
||||||
c.bench_function("from_slice", |b| {
|
Benchmark::new("from_slice", move |b| {
|
||||||
b.iter(|| assert_eq!(len, from_slice(&data[..]).len()))
|
b.iter(|| from_slice(&data[..]).len())
|
||||||
});
|
}).with_function("Ngrams::from", move |b| {
|
||||||
c.bench_function("ByteNgramReader", |b| {
|
b.iter(|| Ngrams::from(&data).count())
|
||||||
b.iter(|| assert_eq!(len, Ngrams::from(&data).count()))
|
}).throughput(Throughput::Bytes(data.len() as u32)),
|
||||||
});
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
criterion_group!(benches, criterion_benchmark);
|
criterion_group!(benches, criterion_benchmark);
|
||||||
|
|||||||
40
src/lib.rs
40
src/lib.rs
@@ -188,22 +188,10 @@ mod tests {
|
|||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_lhs() {
|
fn test_lhs() {
|
||||||
assert_eq!(
|
assert_eq!(Ngram::from_slice("ab").lhs(), Ngram::from_slice("a"));
|
||||||
Ngram::from_slice("ab").lhs(),
|
assert_eq!(Ngram::from_slice("abc").lhs(), Ngram::from_slice("ab"));
|
||||||
Ngram::from_slice("a")
|
assert_eq!(Ngram::from_slice("abcd").lhs(), Ngram::from_slice("abc"));
|
||||||
);
|
assert_eq!(Ngram::from_slice("abcde").lhs(), Ngram::from_slice("abcd"));
|
||||||
assert_eq!(
|
|
||||||
Ngram::from_slice("abc").lhs(),
|
|
||||||
Ngram::from_slice("ab")
|
|
||||||
);
|
|
||||||
assert_eq!(
|
|
||||||
Ngram::from_slice("abcd").lhs(),
|
|
||||||
Ngram::from_slice("abc")
|
|
||||||
);
|
|
||||||
assert_eq!(
|
|
||||||
Ngram::from_slice("abcde").lhs(),
|
|
||||||
Ngram::from_slice("abcd")
|
|
||||||
);
|
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
Ngram::from_slice("abcdef").lhs(),
|
Ngram::from_slice("abcdef").lhs(),
|
||||||
Ngram::from_slice("abcde")
|
Ngram::from_slice("abcde")
|
||||||
@@ -216,22 +204,10 @@ mod tests {
|
|||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_rhs() {
|
fn test_rhs() {
|
||||||
assert_eq!(
|
assert_eq!(Ngram::from_slice("ab").rhs(), Ngram::from_slice("b"));
|
||||||
Ngram::from_slice("ab").rhs(),
|
assert_eq!(Ngram::from_slice("abc").rhs(), Ngram::from_slice("bc"));
|
||||||
Ngram::from_slice("b")
|
assert_eq!(Ngram::from_slice("abcd").rhs(), Ngram::from_slice("bcd"));
|
||||||
);
|
assert_eq!(Ngram::from_slice("abcde").rhs(), Ngram::from_slice("bcde"));
|
||||||
assert_eq!(
|
|
||||||
Ngram::from_slice("abc").rhs(),
|
|
||||||
Ngram::from_slice("bc")
|
|
||||||
);
|
|
||||||
assert_eq!(
|
|
||||||
Ngram::from_slice("abcd").rhs(),
|
|
||||||
Ngram::from_slice("bcd")
|
|
||||||
);
|
|
||||||
assert_eq!(
|
|
||||||
Ngram::from_slice("abcde").rhs(),
|
|
||||||
Ngram::from_slice("bcde")
|
|
||||||
);
|
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
Ngram::from_slice("abcdef").rhs(),
|
Ngram::from_slice("abcdef").rhs(),
|
||||||
Ngram::from_slice("bcdef")
|
Ngram::from_slice("bcdef")
|
||||||
|
|||||||
Reference in New Issue
Block a user