| #![feature(test)] |
| |
| extern crate petgraph; |
| extern crate test; |
| |
| use test::Bencher; |
| |
| #[allow(dead_code)] |
| mod common; |
| use common::*; |
| |
| use petgraph::algo::is_isomorphic; |
| |
| #[bench] |
| fn petersen_iso_bench(bench: &mut Bencher) { |
| let a = digraph().petersen_a(); |
| let b = digraph().petersen_b(); |
| |
| bench.iter(|| is_isomorphic(&a, &b)); |
| assert!(is_isomorphic(&a, &b)); |
| } |
| |
| #[bench] |
| fn petersen_undir_iso_bench(bench: &mut Bencher) { |
| let a = ungraph().petersen_a(); |
| let b = ungraph().petersen_b(); |
| |
| bench.iter(|| is_isomorphic(&a, &b)); |
| assert!(is_isomorphic(&a, &b)); |
| } |
| |
| #[bench] |
| fn full_iso_bench(bench: &mut Bencher) { |
| let a = ungraph().full_a(); |
| let b = ungraph().full_b(); |
| |
| bench.iter(|| is_isomorphic(&a, &b)); |
| assert!(is_isomorphic(&a, &b)); |
| } |
| |
| #[bench] |
| fn praust_dir_no_iso_bench(bench: &mut Bencher) { |
| let a = digraph().praust_a(); |
| let b = digraph().praust_b(); |
| |
| bench.iter(|| is_isomorphic(&a, &b)); |
| assert!(!is_isomorphic(&a, &b)); |
| } |
| |
| #[bench] |
| fn praust_undir_no_iso_bench(bench: &mut Bencher) { |
| let a = ungraph().praust_a(); |
| let b = ungraph().praust_b(); |
| |
| bench.iter(|| is_isomorphic(&a, &b)); |
| assert!(!is_isomorphic(&a, &b)); |
| } |