diff options
Diffstat (limited to 'libnbtplusplus/test/test_value.h')
| -rw-r--r-- | libnbtplusplus/test/test_value.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/libnbtplusplus/test/test_value.h b/libnbtplusplus/test/test_value.h new file mode 100644 index 0000000000..590c5bf2cc --- /dev/null +++ b/libnbtplusplus/test/test_value.h @@ -0,0 +1,36 @@ +#include <cxxtest/TestSuite.h> +#include <cstdint> +#include "value.h" + +using namespace nbt; + +class value_assignment_test : public CxxTest::TestSuite +{ + public: + void test_numeric_assignments() + { + value v; + + v = int8_t(-5); + TS_ASSERT_EQUALS(int32_t(v), int32_t(-5)); + TS_ASSERT_EQUALS(double(v), 5.); + + v = value(); + v = int16_t(12345); + TS_ASSERT_EQUALS(int32_t(v), int32_t(12345)); + TS_ASSERT_EQUALS(double(v), 12345.); + + v = value(); + v = int32_t(100000); + TS_ASSERT_EQUALS(int64_t(v), int64_t(100000)); + TS_ASSERT_EQUALS(double(v), 100000.); + + v = value(); + v = float(3.14f); + TS_ASSERT_EQUALS(double(v), 3.14); + + v = value(); + v = double(2.718281828); + TS_ASSERT_EQUALS(double(v), 2.718281828); + } +}; |
