test_left_shift_automatic_results.hpp 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #ifndef BOOST_SAFE_NUMERICS_TEST_LEFT_SHIFT_AUTOMATIC_RESULTS_HPP
  2. #define BOOST_SAFE_NUMERICS_TEST_LEFT_SHIFT_AUTOMATIC_RESULTS_HPP
  3. // Copyright (c) 2019 Robert Ramey
  4. //
  5. // Distributed under the Boost Software License, Version 1.0. (See
  6. // accompanying file LICENSE_1_0.txt or copy at
  7. // http://www.boost.org/LICENSE_1_0.txt)
  8. #include "test_values.hpp"
  9. // note: same test matrix as used in test_checked. Here we test all combinations
  10. // safe and unsafe integers. in test_checked we test all combinations of
  11. // integer primitives
  12. constexpr const char *test_left_shift_automatic_result[
  13. boost::mp11::mp_size<test_values>::value
  14. ] = {
  15. // 0 0 0 0
  16. // 012345670123456701234567012345670
  17. // 012345678901234567890123456789012
  18. /* 0*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  19. /* 1*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  20. /* 2*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  21. /* 3*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  22. /* 4*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  23. /* 5*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  24. /* 6*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  25. /* 7*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  26. /* 8*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  27. /* 9*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  28. /*10*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  29. /*11*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  30. /*12*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  31. /*13*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  32. /*14*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  33. /*15*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  34. // 0 0 0 0
  35. // 012345670123456701234567012345670
  36. // 012345678901234567890123456789012
  37. /*16*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  38. /*17*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  39. /*18*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  40. /*19*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  41. /*20*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  42. /*21*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  43. /*22*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  44. /*23*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  45. /*24*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  46. /*25*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  47. /*26*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  48. /*27*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  49. /*28*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  50. /*29*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.",
  51. /*30*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  52. /*31*/ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.",
  53. /*32*/ ".xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx."
  54. };
  55. #endif // BOOST_SAFE_NUMERICS_TEST_LEFT_SHIFT_AUTOMATIC_RESULTS_HPP