Advanced Chunk Processing Library
0.2.0
A comprehensive C++ library for advanced data chunking strategies and processing operations
Loading...
Searching...
No Matches
test_serialization.cpp
Go to the documentation of this file.
1
#include "
chunk_serialization.hpp
"
2
#include <gtest/gtest.h>
3
4
class
ChunkSerializerTest
:
public
::testing::Test {
5
protected
:
6
void
SetUp
()
override
{
7
chunks
= {{1.0, 2.0, 3.0}, {4.0, 5.0}, {6.0, 7.0, 8.0}};
8
}
9
10
std::vector<std::vector<double>>
chunks
;
11
chunk_serialization::ChunkSerializer<double>
serializer
;
12
};
13
14
TEST_F
(
ChunkSerializerTest
, JsonSerialization) {
15
std::string json = serializer.
to_json
(chunks);
16
EXPECT_FALSE(json.empty());
17
EXPECT_NE(json.find(
"["
), std::string::npos);
18
EXPECT_NE(json.find(
"]"
), std::string::npos);
19
EXPECT_NE(json.find(
"1.0"
), std::string::npos);
20
}
21
22
TEST_F
(
ChunkSerializerTest
, ProtobufSerialization) {
23
try
{
24
std::string proto = serializer.to_protobuf(chunks);
25
EXPECT_FALSE(proto.empty());
26
}
catch
(
const
std::runtime_error& e) {
27
GTEST_SKIP() <<
"Protobuf serialization not available"
;
28
}
29
}
30
31
TEST_F
(
ChunkSerializerTest
, MessagePackSerialization) {
32
try
{
33
std::string msgpack = serializer.to_msgpack(chunks);
34
EXPECT_FALSE(msgpack.empty());
35
}
catch
(
const
std::runtime_error& e) {
36
GTEST_SKIP() <<
"MessagePack serialization not available"
;
37
}
38
}
39
40
TEST_F
(
ChunkSerializerTest
, EmptyChunks) {
41
std::vector<std::vector<double>> empty_chunks;
42
EXPECT_NO_THROW(serializer.to_json(empty_chunks));
43
}
chunk_serialization.hpp
Serialization utilities for chunk data.
ChunkSerializerTest
Definition
test_serialization.cpp:4
ChunkSerializerTest::serializer
chunk_serialization::ChunkSerializer< double > serializer
Definition
test_serialization.cpp:11
ChunkSerializerTest::chunks
std::vector< std::vector< double > > chunks
Definition
test_serialization.cpp:10
ChunkSerializerTest::SetUp
void SetUp() override
Definition
test_serialization.cpp:6
chunk_serialization::ChunkSerializer
Class for serializing chunks to various formats.
Definition
chunk_serialization.hpp:21
chunk_serialization::ChunkSerializer::to_json
std::string to_json(const std::vector< std::vector< T > > &chunks)
Serialize chunks to JSON format.
Definition
chunk_serialization.hpp:29
TEST_F
TEST_F(ChunkSerializerTest, JsonSerialization)
Definition
test_serialization.cpp:14
tests
test_serialization.cpp
Generated on Sat Dec 28 2024 01:08:55 for Advanced Chunk Processing Library by
1.9.8