diff options
Diffstat (limited to 'searchlib/src/tests/util/slime_output_raw_buf_adapter/slime_output_raw_buf_adapter_test.cpp')
-rw-r--r-- | searchlib/src/tests/util/slime_output_raw_buf_adapter/slime_output_raw_buf_adapter_test.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/searchlib/src/tests/util/slime_output_raw_buf_adapter/slime_output_raw_buf_adapter_test.cpp b/searchlib/src/tests/util/slime_output_raw_buf_adapter/slime_output_raw_buf_adapter_test.cpp new file mode 100644 index 00000000000..5d48520a92c --- /dev/null +++ b/searchlib/src/tests/util/slime_output_raw_buf_adapter/slime_output_raw_buf_adapter_test.cpp @@ -0,0 +1,25 @@ +// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +#include <vespa/vespalib/testkit/test_kit.h> +#include <vespa/searchlib/util/slime_output_raw_buf_adapter.h> +#include <vespa/vespalib/data/slime/slime.h> + +using namespace search; +using namespace vespalib::slime::convenience; + +TEST("use slime with rawbuf") { + RawBuf buffer(4096); + Slime src; + Slime dst; + { + Cursor &c = src.setObject(); + c.setLong("foo", 5); + c.setString("bar", "text"); + } + EXPECT_NOT_EQUAL(src, dst); + SlimeOutputRawBufAdapter adapter(buffer); + vespalib::slime::BinaryFormat::encode(src, adapter); + vespalib::slime::BinaryFormat::decode(Memory(buffer.GetDrainPos(), buffer.GetUsedLen()), dst); + EXPECT_EQUAL(src, dst); +} + +TEST_MAIN() { TEST_RUN_ALL(); } |