Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F3510127
StorageManagerTest.cpp
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
1 KB
Referenced Files
None
Subscribers
None
StorageManagerTest.cpp
View Options
#include
<gtest/gtest.h>
#include
"Constants.h"
#include
"S3Tools.h"
#include
"TestTools.h"
#include
<aws/core/Aws.h>
#include
<chrono>
#include
<iostream>
#include
<memory>
#include
<string>
using
namespace
comm
::
network
;
class
StorageManagerTest
:
public
testing
::
Test
{
public
:
protected
:
const
std
::
string
data
=
"yiU3VaZlKfTteO10yrWmK1Q5BOvBQrdmj2aBlnoLuhxLfRZK1n8"
"26FRXJAGhPswR1r8yxtwxyLkv3I4J4tlH4brDP10mrB99XpM6"
;
virtual
void
SetUp
()
{
Aws
::
InitAPI
({});
}
virtual
void
TearDown
()
{
Aws
::
ShutdownAPI
({});
}
};
TEST_F
(
StorageManagerTest
,
ObjectOperationsTest
)
{
EXPECT_TRUE
(
getBucket
(
BLOB_BUCKET_NAME
).
isAvailable
());
std
::
string
objectName
=
createObject
(
getBucket
(
BLOB_BUCKET_NAME
));
getBucket
(
BLOB_BUCKET_NAME
).
writeObject
(
objectName
,
data
);
EXPECT_EQ
(
getBucket
(
BLOB_BUCKET_NAME
).
getObjectSize
(
objectName
),
data
.
size
());
EXPECT_TRUE
(
getBucket
(
BLOB_BUCKET_NAME
).
getObjectData
(
objectName
)
==
data
);
std
::
string
chunkedData
;
const
size_t
chunkSize
=
data
.
size
()
/
10
;
std
::
function
<
void
(
const
std
::
string
&
)
>
callback
=
[
&
chunkedData
](
const
std
::
string
&
chunk
)
{
chunkedData
+=
chunk
;
};
getBucket
(
BLOB_BUCKET_NAME
)
.
getObjectDataChunks
(
objectName
,
callback
,
chunkSize
);
EXPECT_TRUE
(
data
==
chunkedData
);
getBucket
(
BLOB_BUCKET_NAME
).
renameObject
(
objectName
,
objectName
+
"c"
);
EXPECT_THROW
(
getBucket
(
BLOB_BUCKET_NAME
).
getObjectData
(
objectName
),
std
::
runtime_error
);
EXPECT_TRUE
(
getBucket
(
BLOB_BUCKET_NAME
).
getObjectData
(
objectName
+
"c"
)
==
data
);
getBucket
(
BLOB_BUCKET_NAME
).
renameObject
(
objectName
+
"c"
,
objectName
);
getBucket
(
BLOB_BUCKET_NAME
).
clearObject
(
objectName
);
EXPECT_EQ
(
getBucket
(
BLOB_BUCKET_NAME
).
getObjectSize
(
objectName
),
0
);
getBucket
(
BLOB_BUCKET_NAME
).
removeObject
(
objectName
);
EXPECT_THROW
(
getBucket
(
BLOB_BUCKET_NAME
).
getObjectData
(
objectName
),
std
::
runtime_error
);
}
File Metadata
Details
Attached
Mime Type
text/x-c++
Expires
Mon, Dec 23, 11:52 AM (19 h, 2 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2690858
Default Alt Text
StorageManagerTest.cpp (1 KB)
Attached To
Mode
rCOMM Comm
Attached
Detach File
Event Timeline
Log In to Comment