Unittest
This commit is contained in:
@@ -3,18 +3,34 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <vector>
|
||||
|
||||
class Adaptor {
|
||||
|
||||
class VectorAdaptor {
|
||||
public:
|
||||
Adaptor(const String &fileName) {
|
||||
VectorAdaptor(std::vector<uint8_t> * v) : v_(v) {}
|
||||
|
||||
void write(const char *data, uint32_t size) {
|
||||
v_->insert(v_->end(), data, data + size );
|
||||
}
|
||||
|
||||
private:
|
||||
std::vector<uint8_t> * v_;
|
||||
};
|
||||
|
||||
class FilePtrAdaptor {
|
||||
public:
|
||||
FilePtrAdaptor(const String &fileName) {
|
||||
static const String baseDirectory(".");
|
||||
auto fullFileName = baseDirectory + fileName;
|
||||
fptr = fopen(fullFileName.c_str(), "wb");
|
||||
}
|
||||
|
||||
~Adaptor() {
|
||||
~FilePtrAdaptor() {
|
||||
fclose(fptr);
|
||||
}
|
||||
FilePtrAdaptor(const FilePtrAdaptor &) = delete;
|
||||
void operator=(const FilePtrAdaptor &) = delete;
|
||||
|
||||
void write(const char *data, uint32_t size) {
|
||||
fwrite(data, size, 1, fptr);
|
||||
@@ -28,8 +44,8 @@ private:
|
||||
class MockStorageWriter {
|
||||
public:
|
||||
MockStorageWriter(const String &fileName) {
|
||||
adaptor_ = new Adaptor(fileName);
|
||||
encoder_ = new StreamingMsgPackEncoder <Adaptor>(adaptor_);
|
||||
adaptor_ = new FilePtrAdaptor(fileName);
|
||||
encoder_ = new StreamingMsgPackEncoder <FilePtrAdaptor>(adaptor_);
|
||||
}
|
||||
~MockStorageWriter(){
|
||||
delete adaptor_;
|
||||
@@ -37,11 +53,11 @@ public:
|
||||
}
|
||||
MockStorageWriter(const MockStorageWriter &) = delete;
|
||||
|
||||
StreamingMsgPackEncoder<Adaptor> &encoder() { return *encoder_; }
|
||||
StreamingMsgPackEncoder<FilePtrAdaptor> &encoder() { return *encoder_; }
|
||||
|
||||
private:
|
||||
Adaptor * adaptor_;
|
||||
StreamingMsgPackEncoder <Adaptor> * encoder_;
|
||||
FilePtrAdaptor * adaptor_;
|
||||
StreamingMsgPackEncoder <FilePtrAdaptor> * encoder_;
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -26,6 +26,16 @@ public:
|
||||
return true;
|
||||
}
|
||||
|
||||
void finalize() {
|
||||
if( otherChunkFilled() )
|
||||
saveChunkToFile(otherChunk);
|
||||
if( currentChunk->numMeasurements() > 0) {
|
||||
saveChunkToFile(currentChunk);
|
||||
}
|
||||
currentChunk->init(0, 0);
|
||||
otherChunk->init(0, 0);
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
void serialize(StreamingMsgPackEncoder<T> & encoder, uint32_t startIdx) const
|
||||
{
|
||||
|
||||
@@ -42,9 +42,10 @@ public:
|
||||
void serialize(StreamingMsgPackEncoder<T> & encoder) const
|
||||
{
|
||||
sendHeader(encoder, sessionStartTime, startIndex);
|
||||
encoder.sendArray(values + startIndex, nextFree - startIndex);
|
||||
encoder.sendArray(values, nextFree);
|
||||
}
|
||||
|
||||
/*
|
||||
template<typename T>
|
||||
void serialize(StreamingMsgPackEncoder<T> & encoder, uint32_t start, uint32_t end) const
|
||||
{
|
||||
@@ -67,7 +68,7 @@ public:
|
||||
const uint32_t length = min(nextFree, end - start);
|
||||
encoder.sendArray(values + idxStart, length);
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
template<typename T>
|
||||
static uint32_t valueOffset()
|
||||
|
||||
Reference in New Issue
Block a user