use strict;
use Test::More;
use Graph;
use FindBin qw($Bin);
use lib "$Bin/../lib";
use Data::Dumper;
use JSON;
use_ok 'Graph::D3';
my $g = new Graph(
vertices => [qw/1 2 3 4 5/],
edges => [[qw/1 2/], [qw/2 3/], [qw/3 5/], [qw/4 1/]]
);
my $d3 = new Graph::D3(graph => $g);
is($d3->type, 'ref', 'type ok');
my $output = $d3->force_directed_graph();
is(scalar @{$output->{nodes}}, 5, 'number of node is ok - force directed graph');
is(scalar @{$output->{links}}, 4, 'number of link is ok - force directed graph');
$output = $d3->hierarchical_edge_bundling();
is(scalar @{$output}, 5, 'number of node is ok - hierarchical edge bundling ');
$d3 = new Graph::D3(graph => $g, type => 'json');
my $json = $d3->force_directed_graph();
$output = decode_json $json;
is(scalar @{$output->{nodes}}, 5, 'number of node in json is ok - force directed graph');
is(scalar @{$output->{links}}, 4, 'number of link in json is ok - force directed graph');
$json = $d3->hierarchical_edge_bundling();
$output = decode_json $json;
is(scalar @{$output}, 5, 'number of node in josn is ok - hierarchical edge bundling ');
done_testing;