comparison UnitTests/RestApi.cpp @ 221:e7432706b354

accessors to storage
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 29 Nov 2012 18:01:06 +0100
parents 96b7918a6a18
children bd934af46ba4
comparison
equal deleted inserted replaced
220:bb8c260c0092 221:e7432706b354
2 2
3 #include <ctype.h> 3 #include <ctype.h>
4 #include <glog/logging.h> 4 #include <glog/logging.h>
5 5
6 #include "../Core/RestApi/RestApi.h" 6 #include "../Core/RestApi/RestApi.h"
7 #include "../Core/Uuid.h"
8 #include "../Core/OrthancException.h"
9 #include "../Core/Compression/ZlibCompressor.h"
7 10
8 using namespace Orthanc; 11 using namespace Orthanc;
9 12
10 TEST(RestApi, RestApiPath) 13 TEST(RestApi, RestApiPath)
11 { 14 {
83 /*LOG(WARNING) << "REST has started"; 86 /*LOG(WARNING) << "REST has started";
84 Toolbox::ServerBarrier();*/ 87 Toolbox::ServerBarrier();*/
85 } 88 }
86 89
87 #endif 90 #endif
91
92
93
94 #include "../Core/FileStorage.h"
95 #include "../Core/HttpServer/FilesystemHttpSender.h"
96 #include "../Core/HttpServer/BufferHttpSender.h"
97 #include "../Core/FileStorage/FileStorageAccessor.h"
98 #include "../Core/FileStorage/CompressedFileStorageAccessor.h"
99
100
101
102 TEST(FileStorageAccessor, Simple)
103 {
104 FileStorage s("FileStorageUnitTests");
105 FileStorageAccessor accessor(s);
106
107 std::string data = "Hello world";
108 std::string id = accessor.Write(data);
109
110 std::string r;
111 accessor.Read(r, id);
112
113 ASSERT_EQ(data, r);
114 }
115
116
117
118 TEST(FileStorageAccessor, NoCompression)
119 {
120 FileStorage s("FileStorageUnitTests");
121 CompressedFileStorageAccessor accessor(s);
122
123 accessor.SetCompressionForNextOperations(CompressionType_None);
124 std::string data = "Hello world";
125 std::string id = accessor.Write(data);
126
127 std::string r;
128 accessor.Read(r, id);
129
130 ASSERT_EQ(data, r);
131 }
132
133
134 TEST(FileStorageAccessor, Compression)
135 {
136 FileStorage s("FileStorageUnitTests");
137 CompressedFileStorageAccessor accessor(s);
138
139 accessor.SetCompressionForNextOperations(CompressionType_Zlib);
140 std::string data = "Hello world";
141 std::string id = accessor.Write(data);
142
143 std::string r;
144 accessor.Read(r, id);
145
146 ASSERT_EQ(data, r);
147 }
148
149
150 TEST(FileStorageAccessor, Mix)
151 {
152 FileStorage s("FileStorageUnitTests");
153 CompressedFileStorageAccessor accessor(s);
154
155 std::string r;
156 std::string compressedData = "Hello";
157 std::string uncompressedData = "HelloWorld";
158
159 accessor.SetCompressionForNextOperations(CompressionType_Zlib);
160 std::string compressedId = accessor.Write(compressedData);
161
162 accessor.SetCompressionForNextOperations(CompressionType_None);
163 std::string uncompressedId = accessor.Write(uncompressedData);
164
165 accessor.SetCompressionForNextOperations(CompressionType_Zlib);
166 accessor.Read(r, compressedId);
167 ASSERT_EQ(compressedData, r);
168
169 accessor.SetCompressionForNextOperations(CompressionType_None);
170 accessor.Read(r, compressedId);
171 ASSERT_NE(compressedData, r);
172
173 accessor.SetCompressionForNextOperations(CompressionType_Zlib);
174 ASSERT_THROW(accessor.Read(r, uncompressedId), OrthancException);
175 }