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

Function test

code/data-structures/matrix.test.cpp:2–188  ·  view source on GitHub ↗

Field testing: http://codeforces.com/gym/100962 ABBA */

Source from the content-addressed store, hash-verified

1/* Field testing: http://codeforces.com/gym/100962 ABBA */
2void test() {
3 double det;
4 int rank;
5
6 matrix<int> A(2, 2);
7 assert_equal(0, A(0, 0));
8 assert_equal(0, A(1, 0));
9 assert_equal(0, A(0, 1));
10 assert_equal(0, A(1, 1));
11
12 A(0, 0) = A(0, 1) = A(1, 0) = 1;
13 assert_equal(1, A(0, 0));
14 assert_equal(1, A(1, 0));
15 assert_equal(1, A(0, 1));
16 assert_equal(0, A(1, 1));
17
18 A = A.pow(20);
19 assert_equal(10946, A(0, 0));
20 assert_equal(6765, A(1, 0));
21 assert_equal(6765, A(0, 1));
22 assert_equal(4181, A(1, 1));
23
24 matrix<int> A2(A);
25 assert_equal(10946, A2(0, 0));
26 assert_equal(6765, A2(1, 0));
27 assert_equal(6765, A2(0, 1));
28 assert_equal(4181, A2(1, 1));
29
30 A = A * 5;
31 assert_equal(10946 * 5, A(0, 0));
32 assert_equal(6765 * 5, A(1, 0));
33 assert_equal(6765 * 5, A(0, 1));
34 assert_equal(4181 * 5, A(1, 1));
35
36 A = A + A;
37 assert_equal(10946 * 5 * 2, A(0, 0));
38 assert_equal(6765 * 5 * 2, A(1, 0));
39 assert_equal(6765 * 5 * 2, A(0, 1));
40 assert_equal(4181 * 5 * 2, A(1, 1));
41
42 A = A - A;
43 assert_equal(0, A(0, 0));
44 assert_equal(0, A(1, 0));
45 assert_equal(0, A(0, 1));
46 assert_equal(0, A(1, 1));
47
48 matrix<int> B(1, 2);
49 B(0, 0) = 1;
50 B(0, 1) = 5;
51 assert_equal(1, B.transpose()(0, 0));
52 assert_equal(5, B.transpose()(1, 0));
53
54 matrix<double> C(2, 3);
55 C(0, 0) = 5;
56 C(0, 1) = 7;
57 C(0, 2) = 8;
58 C(1, 0) = 1;
59 C(1, 1) = 1;
60 C(1, 2) = 2;

Callers

nothing calls this directly

Calls 5

assert_almost_equalFunction · 0.85
transposeMethod · 0.80
rrefMethod · 0.80
assert_equalFunction · 0.50
powMethod · 0.45

Tested by

no test coverage detected