1 //Copyright (c) 2008-2016 Emil Dotchevski and Reverge Studios, Inc.
2
3 //Distributed under the Boost Software License, Version 1.0. (See accompanying
4 //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6 #include <boost/qvm/quat_operations.hpp>
7 #include "test_qvm_quaternion.hpp"
8 #include "gold.hpp"
9
10 namespace
11 {
12 void
test()13 test()
14 {
15 using namespace boost::qvm::sfinae;
16 test_qvm::quaternion<Q1> x(42,2);
17 {
18 test_qvm::quaternion<Q1> const y(42,1);
19 test_qvm::add_v(x.b,x.a,y.a);
20 x+=y;
21 BOOST_QVM_TEST_EQ(x.a,x.b);
22 }
23 {
24 test_qvm::quaternion<Q2> const y(42,1);
25 test_qvm::add_v(x.b,x.a,y.a);
26 x+=y;
27 BOOST_QVM_TEST_EQ(x.a,x.b);
28 }
29 }
30 }
31
32 int
main()33 main()
34 {
35 test();
36 return boost::report_errors();
37 }
38