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,double> x(42,1); 17 test_qvm::quaternion<Q1,float> y; 18 assign(y,scalar_cast<float>(x)); 19 for( int i=0; i!=4; ++i ) 20 y.b[i]=static_cast<float>(x.a[i]); 21 BOOST_QVM_TEST_EQ(y.a,y.b); 22 } 23 } 24 25 int main()26main() 27 { 28 test(); 29 return boost::report_errors(); 30 } 31