diff options
Diffstat (limited to 'test_dynarray.cpp')
-rwxr-xr-x | test_dynarray.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test_dynarray.cpp b/test_dynarray.cpp new file mode 100755 index 0000000..d05d9a3 --- /dev/null +++ b/test_dynarray.cpp @@ -0,0 +1,29 @@ +#include "dynarray.h"
+
+DECL_MAIN {
+ static constexpr size_t N = 100000;
+ auto a = DynArray<int>(N);
+
+ for (size_t i = 0; i < 16; i++) {
+ assert(a.Append(static_cast<int>(i)));
+ }
+
+ for (size_t i = 0; i < 12; i++) {
+ std::cout << a[i] << "\n";
+ }
+
+ for (size_t i = 16; i < N; i++) {
+ a.Append(static_cast<int>(i));
+ }
+
+ size_t real_cap = GetCommittedBytes(N * sizeof(int)) / sizeof(int);
+
+ for (size_t i = N; i < real_cap; i++) {
+ a.Append(static_cast<int>(i));
+ }
+
+ // Exceeded capacity. Assertion failure.
+ // a.Append(0);
+
+ return 0;
+}
|