diff options
author | Jason Carey <jcarey@argv.me> | 2015-04-14 16:25:45 -0400 |
---|---|---|
committer | Jason Carey <jcarey@argv.me> | 2015-04-15 12:05:51 -0400 |
commit | a929268ad5dea50223fefd3228a8aa168feda4ac (patch) | |
tree | d23b77a71e945206f8959698b27798f871f1fc20 /src/mongo/base/data_range_cursor_test.cpp | |
parent | 66dba2b38acb6e0380f8de45c72afb065c63aa52 (diff) | |
download | mongo-a929268ad5dea50223fefd3228a8aa168feda4ac.tar.gz |
SERVER-17629 StringData + various DataTypes
Implemented DataType specializations for:
o StringData
o *DataRange*
Added a new meta type called Terminated<char, T>
Diffstat (limited to 'src/mongo/base/data_range_cursor_test.cpp')
-rw-r--r-- | src/mongo/base/data_range_cursor_test.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/mongo/base/data_range_cursor_test.cpp b/src/mongo/base/data_range_cursor_test.cpp index f40bfdbc4bf..4ae839fb440 100644 --- a/src/mongo/base/data_range_cursor_test.cpp +++ b/src/mongo/base/data_range_cursor_test.cpp @@ -58,6 +58,19 @@ namespace mongo { ASSERT_EQUALS(false, cdrc.readAndAdvance<char>().isOK()); } + TEST(DataRangeCursor, ConstDataRangeCursorType) { + char buf[] = "foo"; + + ConstDataRangeCursor cdrc(buf, buf + sizeof(buf)); + + ConstDataRangeCursor out(nullptr, nullptr); + + auto inner = cdrc.read(&out); + + ASSERT_OK(inner); + ASSERT_EQUALS(buf, out.data()); + } + TEST(DataRangeCursor, DataRangeCursor) { char buf[100] = { 0 }; @@ -78,4 +91,23 @@ namespace mongo { ASSERT_EQUALS(static_cast<char>(0), cdrc.readAndAdvance<char>().getValue()); } + TEST(DataRangeCursor, DataRangeCursorType) { + char buf[] = "foo"; + char buf2[] = "barZ"; + + DataRangeCursor drc(buf, buf + sizeof(buf) + -1); + + DataRangeCursor out(nullptr, nullptr); + + Status status = drc.read(&out); + + ASSERT_OK(status); + ASSERT_EQUALS(buf, out.data()); + + drc = DataRangeCursor(buf2, buf2 + sizeof(buf2) + -1); + status = drc.write(out); + + ASSERT_OK(status); + ASSERT_EQUALS(std::string("fooZ"), buf2); + } } // namespace mongo |