int main() { test_matrix<1,2>(); test_matrix<2,1>(); test_matrix<2,2>(); test_matrix<1,3>(); test_matrix<3,1>(); test_matrix<3,3>(); test_matrix<1,4>(); test_matrix<4,1>(); test_matrix<4,4>(); test_matrix<1,5>(); test_matrix<5,1>(); test_matrix<5,5>(); test_quaternion(); test_vector<2>(); test_vector<3>(); test_vector<4>(); test_vector<5>(); return boost::report_errors(); }
int main() { test_matrix<1,2>("((42,43))"); test_matrix<2,1>("((42)(43))"); test_matrix<2,2>("((42,43)(44,45))"); test_matrix<1,3>("((42,43,44))"); test_matrix<3,1>("((42)(43)(44))"); test_matrix<3,3>("((42,43,44)(45,46,47)(48,49,50))"); test_matrix<1,4>("((42,43,44,45))"); test_matrix<4,1>("((42)(43)(44)(45))"); test_matrix<4,4>("((42,43,44,45)(46,47,48,49)(50,51,52,53)(54,55,56,57))"); test_matrix<1,5>("((42,43,44,45,46))"); test_matrix<5,1>("((42)(43)(44)(45)(46))"); test_matrix<5,5>("((42,43,44,45,46)(47,48,49,50,51)(52,53,54,55,56)(57,58,59,60,61)(62,63,64,65,66))"); test_vector<2>("(42,43)"); test_vector<3>("(42,43,44)"); test_vector<4>("(42,43,44,45)"); test_vector<5>("(42,43,44,45,46)"); test_quaternion("(42,43,44,45)"); return boost::report_errors(); }
void test_quaternion_eulers(void) { uint8_t i, j, k; uint8_t N = ARRAY_SIZE(angles); hal.console->println("quaternion unit tests\n"); test_quaternion(M_PI/4, 0, 0); test_quaternion(0, M_PI/4, 0); test_quaternion(0, 0, M_PI/4); test_quaternion(-M_PI/4, 0, 0); test_quaternion(0, -M_PI/4, 0); test_quaternion(0, 0, -M_PI/4); test_quaternion(-M_PI/4, 1, 1); test_quaternion(1, -M_PI/4, 1); test_quaternion(1, 1, -M_PI/4); test_quaternion(ToRad(89), 0, 0.1f); test_quaternion(0, ToRad(89), 0.1f); test_quaternion(0.1f, 0, ToRad(89)); test_quaternion(ToRad(91), 0, 0.1f); test_quaternion(0, ToRad(91), 0.1f); test_quaternion(0.1f, 0, ToRad(91)); for (i=0; i<N; i++) for (j=0; j<N; j++) for (k=0; k<N; k++) test_quaternion(angles[i], angles[j], angles[k]); hal.console->println("tests done\n"); }