Skip to content

Commit a0db986

Browse files
author
Vincent Prouillet
committed
Add benches
1 parent bad07b5 commit a0db986

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

benches/graphql.rs

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#![feature(test)]
2+
extern crate test;
3+
4+
extern crate graphql_parser;
5+
6+
use std::io::Read;
7+
use std::fs::File;
8+
9+
use graphql_parser::parse_query;
10+
11+
fn load_file(name: &str) -> String {
12+
let mut buf = String::with_capacity(1024);
13+
let path = format!("tests/samples/{}.graphql", name);
14+
let mut f = File::open(&path).unwrap();
15+
f.read_to_string(&mut buf).unwrap();
16+
buf
17+
}
18+
19+
#[bench]
20+
fn bench_minimal(b: &mut test::Bencher) {
21+
let f = load_file("minimal");
22+
b.iter(|| parse_query(&f).unwrap());
23+
}
24+
25+
#[bench]
26+
fn bench_inline_fragment(b: &mut test::Bencher) {
27+
let f = load_file("inline_fragment");
28+
b.iter(|| parse_query(&f).unwrap());
29+
}
30+
31+
#[bench]
32+
fn bench_directive_args(b: &mut test::Bencher) {
33+
let f = load_file("directive_args");
34+
b.iter(|| parse_query(&f).unwrap());
35+
}
36+
37+
#[bench]
38+
fn bench_query_vars(b: &mut test::Bencher) {
39+
let f = load_file("query_vars");
40+
b.iter(|| parse_query(&f).unwrap());
41+
}
42+
43+
#[bench]
44+
fn bench_kitchen_sink(b: &mut test::Bencher) {
45+
let f = load_file("kitchen-sink");
46+
b.iter(|| parse_query(&f).unwrap());
47+
}

0 commit comments

Comments
 (0)