18 using Graph = Digraph<char, std::string>;
21 BEAST_EXPECT(!graph.connected(
'a',
'b'));
22 BEAST_EXPECT(!graph.edge(
'a',
'b'));
23 BEAST_EXPECT(!graph.disconnect(
'a',
'b'));
25 BEAST_EXPECT(graph.connect(
'a',
'b',
"foobar"));
26 BEAST_EXPECT(graph.connected(
'a',
'b'));
27 BEAST_EXPECT(*graph.edge(
'a',
'b') ==
"foobar");
29 BEAST_EXPECT(!graph.connect(
'a',
'b',
"repeat"));
30 BEAST_EXPECT(graph.disconnect(
'a',
'b'));
31 BEAST_EXPECT(graph.connect(
'a',
'b',
"repeat"));
32 BEAST_EXPECT(graph.connected(
'a',
'b'));
33 BEAST_EXPECT(*graph.edge(
'a',
'b') ==
"repeat");
35 BEAST_EXPECT(graph.connect(
'a',
'c',
"tree"));
40 for (
auto const& edge : graph.outEdges(
'a'))
48 BEAST_EXPECT(edges == expected);
49 BEAST_EXPECT(graph.outDegree(
'a') == expected.
size());
52 BEAST_EXPECT(graph.outEdges(
'r').size() == 0);
53 BEAST_EXPECT(graph.outDegree(
'r') == 0);
54 BEAST_EXPECT(graph.outDegree(
'c') == 0);
57 BEAST_EXPECT(graph.outVertices().size() == 1);
60 BEAST_EXPECT((graph.outVertices(
'a') == expected));
61 BEAST_EXPECT(graph.outVertices(
'b').size() == 0);
62 BEAST_EXPECT(graph.outVertices(
'c').size() == 0);
63 BEAST_EXPECT(graph.outVertices(
'r').size() == 0);
66 graph.saveDot(ss, [](
char v) {
return v; });
72 BEAST_EXPECT(ss.
str() == expectedDot);