summaryrefslogtreecommitdiff
path: root/Runtime/Serialize/Blobification/OffsetPtrTest.cpp
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2019-08-14 22:50:43 +0800
committerchai <chaifix@163.com>2019-08-14 22:50:43 +0800
commit15740faf9fe9fe4be08965098bbf2947e096aeeb (patch)
treea730ec236656cc8cab5b13f088adfaed6bb218fb /Runtime/Serialize/Blobification/OffsetPtrTest.cpp
+Unity Runtime codeHEADmaster
Diffstat (limited to 'Runtime/Serialize/Blobification/OffsetPtrTest.cpp')
-rw-r--r--Runtime/Serialize/Blobification/OffsetPtrTest.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/Runtime/Serialize/Blobification/OffsetPtrTest.cpp b/Runtime/Serialize/Blobification/OffsetPtrTest.cpp
new file mode 100644
index 0000000..9ddd2a8
--- /dev/null
+++ b/Runtime/Serialize/Blobification/OffsetPtrTest.cpp
@@ -0,0 +1,31 @@
+#include "UnityPrefix.h"
+
+#include "Runtime/Serialize/SerializeTraits.h"
+#include "offsetptr.h"
+
+
+#include <limits>
+
+
+void TestOffsetPtr ()
+{
+ OffsetPtr<size_t>* ptrHigh = new OffsetPtr<size_t>;
+ OffsetPtr<size_t>* ptrLow = new OffsetPtr<size_t>;
+
+ size_t* ptrH = reinterpret_cast<size_t*>(std::numeric_limits<size_t>::max()-4);
+ size_t* ptrL = reinterpret_cast<size_t*>(4);
+
+ ptrHigh->reset(ptrH);
+ ptrLow->reset(ptrL);
+
+ size_t h = reinterpret_cast<size_t>(ptrHigh->Get());
+ size_t l = reinterpret_cast<size_t>(ptrLow->Get());
+
+
+ Assert(h == std::numeric_limits<size_t>::max()-4);
+ Assert(l == 4);
+
+ delete ptrHigh;
+ delete ptrLow;
+
+}