MCPcopy Create free account
hub / github.com/SuprDewd/CompetitiveProgramming / test

Function test

code/graph/bellman_ford.test.cpp:1–52  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1void test() {
2 vii* adj = new vii[5];
3 adj[0].push_back(ii(1, 1));
4 adj[0].push_back(ii(2, 10));
5 adj[1].push_back(ii(3, 2));
6 adj[2].push_back(ii(3, -10));
7 adj[3].push_back(ii(4, 3));
8
9 bool neg_cycle;
10 int* dist = bellman_ford(5, 0, adj, neg_cycle);
11
12 assert_false(neg_cycle);
13 assert_equal(0, dist[0]);
14 assert_equal(1, dist[1]);
15 assert_equal(10, dist[2]);
16 assert_equal(0, dist[3]);
17 assert_equal(3, dist[4]);
18
19 delete[] adj;
20
21 adj = new vii[5];
22 adj[0].push_back(ii(1, 1));
23 adj[0].push_back(ii(2, 0));
24 adj[1].push_back(ii(3, 2));
25 adj[2].push_back(ii(3, -10));
26 adj[3].push_back(ii(4, 3));
27 adj[3].push_back(ii(0, 0));
28
29 dist = bellman_ford(5, 0, adj, neg_cycle);
30
31 assert_true(neg_cycle);
32
33 delete[] adj;
34
35 adj = new vii[2];
36 adj[0].push_back(ii(1, -1));
37 adj[1].push_back(ii(0, -1));
38
39 dist = bellman_ford(2, 0, adj, neg_cycle);
40
41 assert_true(neg_cycle);
42
43 delete[] adj;
44
45 adj = new vii[2];
46 adj[0].push_back(ii(1, -1));
47 adj[1].push_back(ii(0, -1));
48
49 dist = bellman_ford(2, 1, adj, neg_cycle);
50
51 assert_true(neg_cycle);
52}
53// vim: cc=60 ts=2 sts=2 sw=2:

Callers

nothing calls this directly

Calls 5

bellman_fordFunction · 0.85
assert_falseFunction · 0.85
assert_trueFunction · 0.85
push_backMethod · 0.80
assert_equalFunction · 0.50

Tested by

no test coverage detected