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

Function test

code/geometry/lines.test.cpp:10–51  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8}
9
10void test() {
11
12 point a, b, c;
13
14 a = point(-2, -2); b = point(3, 3); c = point(5, 5);
15 assert_true(collinear(a, b, c));
16 assert_true(collinear(a, c, b));
17 assert_true(collinear(b, a, c));
18 assert_true(collinear(b, c, a));
19 assert_true(collinear(c, a, b));
20 assert_true(collinear(c, b, a));
21
22 a = point(-2, 2); b = point(3, 3); c = point(5, 5);
23 assert_false(collinear(a, b, c));
24 assert_false(collinear(a, c, b));
25 assert_false(collinear(b, a, c));
26 assert_false(collinear(b, c, a));
27 assert_false(collinear(c, a, b));
28 assert_false(collinear(c, b, a));
29
30
31 assert_equal(point(1, 1), closest_point(point(2, 2), point(3, 3), point(2, 0)));
32 assert_equal(point(0.5, 0.5), closest_point(point(2, 2), point(3, 3), point(1, 0)));
33 assert_equal(point(1, 1), closest_point(point(2, 2), point(3, 3), point(0, 2)));
34 assert_equal(point(0.5, 0.5), closest_point(point(2, 2), point(3, 3), point(0, 1)));
35 assert_equal(point(0, 0), closest_point(point(2, 2), point(3, 3), point(0, 0)));
36 assert_equal(point(2, 2), closest_point(point(2, 2), point(3, 3), point(2, 2)));
37 assert_equal(point(1, 1), closest_point(point(2, 2), point(3, 3), point(1, 1)));
38 assert_equal(point(3, 3), closest_point(point(2, 2), point(3, 3), point(3, 3)));
39 assert_equal(point(2.5, 2.5), closest_point(point(2, 2), point(3, 3), point(2.5, 2.5)));
40
41 assert_equal(point(2.5, 2.5), closest_point(point(2, 2), point(3, 3), point(2.5, 2.5), true));
42 assert_equal(point(2, 2), closest_point(point(2, 2), point(3, 3), point(2, 2), true));
43 assert_equal(point(3, 3), closest_point(point(2, 2), point(3, 3), point(3, 3), true));
44 assert_equal(point(2, 2), closest_point(point(2, 2), point(3, 3), point(1, 1), true));
45 assert_equal(point(3, 3), closest_point(point(2, 2), point(3, 3), point(4, 4), true));
46 assert_equal(point(3, 3), closest_point(point(2, 2), point(3, 3), point(50, 100), true));
47 assert_equal(point(3, 3), closest_point(point(2, 2), point(3, 3), point(100, 50), true));
48 assert_equal(point(2, 2), closest_point(point(2, 2), point(3, 3), point(-50, -100), true));
49 assert_equal(point(2, 2), closest_point(point(2, 2), point(3, 3), point(-100, -50), true));
50
51}
52// vim: cc=60 ts=2 sts=2 sw=2:

Callers

nothing calls this directly

Calls 6

assert_trueFunction · 0.85
assert_falseFunction · 0.85
closest_pointFunction · 0.85
pointClass · 0.70
collinearFunction · 0.70
assert_equalFunction · 0.70

Tested by

no test coverage detected