use criterion::{criterion_group, criterion_main, Criterion};
use std::hint::black_box;
use pijul_srv_lite::parse_url;

fn bench_parse_url(c: &mut Criterion) {
    let query_string = "/.pijul?channel=main&id=xyz&state=open&log=true";

    let mut group = c.benchmark_group("parse");

    group.bench_function("parse_url", |b| {
        b.iter(|| {
            let res = parse_url(black_box(query_string));
            black_box(res)
        })
    });

    group.finish();
}

criterion_group!(benches, bench_parse_url);
criterion_main!(benches);