More tests

This commit is contained in:
2020-02-24 22:49:55 +03:00
parent 5badb6b27d
commit 747b3a6ef2

View File

@@ -26,6 +26,7 @@ void test_function() {
assert(("converting 01001001", Function<uint16_t, 8>("01001001").string() == "01001001"));
assert(("converting 00000000", Function<uint16_t, 8>("00000000").string() == "00000000"));
assert(("converting 11111111", Function<uint16_t, 8>("11111111").string() == "11111111"));
assert((Function<uint16_t, 16>("0010101111110001").string() == "0010101111110001"));
Function<uint16_t, 8> a(12);
Function<uint16_t, 8> b(5);
@@ -59,7 +60,13 @@ void test_function() {
assert(i_matrix.string("") == "100010001");
assert(i_matrix.get_determinant() == 1);
assert(minus_i_matrix.string("") == "001010100");
assert(minus_i_matrix.get_determinant() == uint16_t(-1));
assert(minus_i_matrix.get_determinant() != 0); // == uint16_t(-1)
assert((BoolSquareMatrix<uint16_t, 3>(0b001001010).get_determinant() == 0));
assert((BoolSquareMatrix<uint16_t, 3>(0b101000010).get_determinant() == 0));
assert((BoolSquareMatrix<uint16_t, 3>(0b110101110).get_determinant() == 0));
assert((BoolSquareMatrix<uint16_t, 3>(0b110101011).get_determinant() %2 == 0));
assert((BoolSquareMatrix<uint16_t, 3>(0b001011111).get_determinant() != 0)); // == uint16_t(-1)
BoolSquareMatrix<uint16_t, 4> ones_matrix_4(0b1111111111111111),
i_matrix_4(0b1000010000100001),
@@ -71,6 +78,10 @@ void test_function() {
assert(minus_i_matrix_4.string("") == "0001001001001000");
assert(minus_i_matrix_4.get_determinant() == 1);
assert((BoolSquareMatrix<uint16_t, 4>(0b0001100000011010).get_determinant() == 0));
assert((BoolSquareMatrix<uint16_t, 4>(0b0100011110111001).get_determinant() != 0));
assert((BoolSquareMatrix<uint16_t, 4>(0b0000110100001101).get_determinant() == 0));
assert((BoolSquareMatrix<uint16_t, 4>(0b0010101111110001).get_determinant() != 0));
cout << "self-test passed" << endl;
}